[Clfs-support] Problem compiling gcc 4.3.3 cross.

Stef Bon stef at bononline.nl
Mon Sep 28 14:07:09 PDT 2009


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



More information about the Clfs-support mailing list