Cross compiler problem: cannot find crt1.o

Vincent De Groote
Sun Apr 19 11:01:00 GMT 2009


I try to build a toolchain for a i486-linux-gnu target, and I'm new to 
cross compiling.
I'm running a i686-pc-cygwin system

I have built the following packages:

binutils-2.19.1:, compiled in a 'binutils' directory:

../../../sources/binutils/binutils-2.19.1/configure -C 
--target=i486-linux-gnu --prefix=`pwd`/../tools 
--exec-prefix=`pwd`/../tools --disable-nls -v
make all
make install

gcc-4.3.3, compiled in a 'gcc-bootstrap' directory:

../../../sources/gcc/gcc-4.3.3/configure -C --target=i486-linux-gnu 
--prefix=`pwd`/../tools --exec-prefix=`pwd`/../tools 
--enable-languages=c --disable-nls
make all-gcc
make install-gcc

glibc-2.9, with glibc-linuxthreads-2.3.6, compiled in a 'glibc' directory:

../../../sources/glibc-2.9/configure -C --host=i486-linux-gnu 
--build=i686-pc-cygwin --prefix=`pwd`/../tools 
--exec-prefix=`pwd`/../tools --enable-add-ons 
--with-headers=../kernel-include/linux-2.6.27/include --disable-nls

The configuration fails with the error

running configure fragment for nptl/sysdeps/pthread
checking for forced unwind support... no
configure: error: forced unwind support is required

The unwind support fails because glibc configure script tries to compile 
and link a small program testing for unwind support, and the link fails:

crt1.o: No such file: No such file or directory

Where should this file crt1.o come from ?.  I know its a C runtime 
startup file.  I guess that this is a target object file.

The page, under the "Building a 
cross compiler" section, tells that
      [It] Build runtime libraries using the compiler from the previous step

So I suppose the crt1.o object file should be located in those 
libraries, but I cannot find them

Is there something missing or wrong somewhere ? Any help will be appreciated

Thanks for your time and your replies

Vincent De Groote


More information about the Gcc-help mailing list