[Clfs-support] Problem compiling gcc 4.3.3 cross.

Stef Bon stef at bononline.nl
Tue Sep 29 02:36:03 PDT 2009


Well, on the Internet I've found out that gccversion 4.3 has reorganised 
the way to look for limits.h:

http://markmail.org/message/fa7zhlqdhi3vs73p

So there is written that the glibc needs to be patched... this should 
also count for uclibc.
Is there a patch?

Stef


Stef Bon wrote:
> Hello,
>
> I'm trying to build a clfs embedded system, using the svn version 
> guide svn 0.0.1 20090726-x86.
>
> Now I'm at the building of 6.11 gcc-4.3.3 cross compiler final.
>
> The make commands ends in an error, something with syslimits.h:
>
>
> if [ -d ../prev-gcc ]; then \
>          cd ../prev-gcc && \
>          make real-install-headers-tar DESTDIR=`pwd`/../gcc/ \
>            libsubdir=. ; \
>        else \
>          set -e; for ml in `cat fixinc_list`; do \
>            sysroot_headers_suffix=`echo ${ml} | sed -e 's/;.*$//'`; \
>            multi_dir=`echo ${ml} | sed -e 's/^[^;]*;//'`; \
>            fix_dir=include-fixed${multi_dir}; \
>            if ! false && test ! -d `echo /tools/include | sed -e :a -e 
> 's,[^/]*/\.\.\/,,' -e ta`; then \
>              echo The directory that should contain system headers 
> does not exist: >&2 ; \
>              echo "  `echo /tools/include | sed -e :a -e 
> 's,[^/]*/\.\.\/,,' -e ta`" >&2 ; \
>              tooldir_sysinc=`echo 
> "/mnt/sd/sda/6/cross-tools//lib/gcc/i686-pc-linux-uclibc/4.3.3/../../../../i686-pc-linux-uclibc/sys-include" 
> | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`; \
>              if test "x`echo /tools/include | sed -e :a -e 
> 's,[^/]*/\.\.\/,,' -e ta`" = "x${tooldir_sysinc}"; \
>              then sleep 1; else exit 1; fi; \
>            fi; \
>            /bin/sh ../../gcc-4.3.3/gcc/../mkinstalldirs ${fix_dir}; \
>            chmod a+rx ${fix_dir} || true; \
>            (TARGET_MACHINE='i686-pc-linux-uclibc'; srcdir=`cd 
> ../../gcc-4.3.3/gcc; ${PWDCMD-pwd}`; \
>              SHELL='/bin/sh'; MACRO_LIST=`${PWDCMD-pwd}`/macro_list ; \
>              export TARGET_MACHINE srcdir SHELL MACRO_LIST && \
>              cd ../build-i686-pc-linux-gnu/fixincludes && \
>              /bin/sh ./fixinc.sh ../../gcc/${fix_dir} \
>                `echo /tools/include | sed -e :a -e 's,[^/]*/\.\.\/,,' 
> -e ta`  ); \
>            rm -f ${fix_dir}/syslimits.h; \
>            if [ -f ${fix_dir}/limits.h ]; then \
>              mv ${fix_dir}/limits.h ${fix_dir}/syslimits.h; \
>            else \
>              cp ../../gcc-4.3.3/gcc/gsyslimits.h 
> ${fix_dir}/syslimits.h; \
>            fi; \
>            chmod a+r ${fix_dir}/syslimits.h; \
>          done; \
>        fi
> The directory that should contain system headers does not exist:
>  /tools/include
> make[2]: *** [stmp-fixinc] Error 1
>
>
> my configure looks like:
>
> ../gcc-4.3.3/configure --prefix=/mnt/sd/sda/6/cross-tools/ \
>                       --build=i686-pc-linux-gnu \
>                       --target=i686-pc-linux-uclibc \
>                       --host=i686-pc-linux-gnu \
>                       --with-sysroot=/mnt/sd/sda/6 \
>                       --disable-nls \
>                       --enable-shared \
>                       --with-mpfr=/cross-tools \
>                       --with-gmp=/cross-tools \
>                       --enable-languages=c \
>                       --enable-c99 \
>                       --enable-long-long
>
>
> Any idea?
>
>
> Stef Bon
> _______________________________________________
> Clfs-support mailing list
> Clfs-support at lists.cross-lfs.org
> http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org
>




More information about the Clfs-support mailing list