Thank you, to fix my problem, I just added #ifndef _LIBC_LIMITS_H_ #include "/LFS2011/include/limits.h" #endif on top of /LFS2011/lib/gcc/i586-pc-linux/4.5.2/include-fixed/limits.h I tried to understand why (GCC) limits.h is into include-fixed, without success. I found Ian message here : http://gcc.gnu.org/ml/gcc/2007-12/msg00095.html but my glibc is not buildt with "-nostdinc" option. On Thu, 3 Feb 2011 18:23:29 +0000, Jonathan Wakely <jwakely.gcc@xxxxxxxxx> wrote: > On 3 February 2011 14:31, <yann@xxxxxxxxxxxxxxxx> wrote: >> into gcc/incpath.c Â: >> >> into remove_duplicates : >> >> /LFS2011/include is removed because "it is a non-system directory that >> duplicates a system directory" >> >> Then the search order is : >> >> Â/LFS2011/bin/../lib/gcc/i586-pc-linux/4.5.2/include >> Â/LFS2011/bin/../lib/gcc/i586-pc-linux/4.5.2/include-fixed >> Â/LFS2011/include >> Â/usr/include >> >> the problem is that a "limits.h" is into >> /LFS2011/bin/../lib/gcc/i586-pc-linux/4.5.2/include-fixed/ >> >> The "-I" option should not overwrite search order (and put >> /LFS2011/include as first directory) ? > > No, see the manual entry for -I to see how standard system include > directories are handled: > http://gcc.gnu.org/onlinedocs/gcc/Directory-Options.html > > As documented you can use -isystem if needed.