Ch5 static gcc cant find crti.o on x86_64

John Nielsen knoglen at
Sun Jan 30 07:58:44 PST 2005


Im trying to build LFS using a Fedora Core 3 x86_64 vanilla installation.
This is my first x86_64 attempt at an LFS installation. I have plenty LFS
experience, but I didnt have the courage to mess around with a cross
compiler, so I installed Fedora to use its toolchain instead.

The installation halted pretty quickly when ch5 stage1 gcc blew up saying
that it couldnt find crti.o. Since this was so early in the installation
process, I tried clearing the source tree and configuring gcc without any
parameters. This gave me exactly the same error as before and told me that
this isnt caused by a simple typo. Doing exactly the same on my i686 LFS on
the same machine finished the build without any errors. This is the command
I used: ./configure --enable-languages=c && make. And this is the error
message it gives in fedora:

make[3]: Leaving directory `/root/gcc-3.4.3/gcc'
/root/gcc-3.4.3/gcc/xgcc -B/root/gcc-3.4.3/gcc/
-B/usr/local/x86_64-unknown-linux-gnu/lib/ -isystem
-isystem /usr/local/x86_64-unknown-linux-gnu/sys-include -O2  -DIN_GCC   
-W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition 
-isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED  -shared -nodefaultlibs -Wl,
-Wl,--version-script=libgcc/32/ -o 32/  -m32
libgcc/32/_muldi3.o libgcc/32/_negdi2.o libgcc/32/_lshrdi3.o
libgcc/32/_ashldi3.o libgcc/32/_ashrdi3.o libgcc/32/_cmpdi2.o
libgcc/32/_floatdidf.o libgcc/32/_floatdisf.o libgcc/32/_fixunsdfsi.o
libgcc/32/_fixunssfsi.o libgcc/32/_fixunsdfdi.o libgcc/32/_fixdfdi.o
libgcc/32/_fixunssfdi.o libgcc/32/_fixsfdi.o libgcc/32/_fixxfdi.o
libgcc/32/_fixunsxfdi.o libgcc/32/_floatdixf.o libgcc/32/_fixunsxfsi.o
libgcc/32/_fixtfdi.o libgcc/32/_fixunstfdi.o libgcc/32/_floatditf.o
libgcc/32/_clear_cache.o libgcc/32/_enable_execute_stack.o
libgcc/32/_trampoline.o libgcc/32/__main.o libgcc/32/_absvsi2.o
libgcc/32/_absvdi2.o libgcc/32/_addvsi3.o libgcc/32/_addvdi3.o
libgcc/32/_subvdi3.o libgcc/32/_mulvsi3.o libgcc/32/_mulvdi3.o
libgcc/32/_negvsi2.o libgcc/32/_negvdi2.o libgcc/32/_ctors.o
libgcc/32/_ffsdi2.o libgcc/32/_clz.o libgcc/32/_clzsi2.o libgcc/32/_clzdi2.o
libgcc/32/_ctzsi2.o libgcc/32/_ctzdi2.o libgcc/32/_popcount_tab.o
libgcc/32/_popcountsi2.o libgcc/32/_popcountdi2.o libgcc/32/_paritysi2.o
libgcc/32/_paritydi2.o libgcc/32/_divdi3.o libgcc/32/_moddi3.o
libgcc/32/_udivdi3.o libgcc/32/_umoddi3.o libgcc/32/_udiv_w_sdiv.o
libgcc/32/_udivmoddi4.o  libgcc/32/unwind-dw2.o
libgcc/32/unwind-sjlj.o libgcc/32/gthr-gnat.o libgcc/32/unwind-c.o -lc && rm
-f && if [ -f 32/ ]; then mv -f
32/ 32/`basename `; else true; fi && mv
32/ 32/ && ln -s 32/
/usr/bin/ld: crti.o: No such file: No such file or directory
collect2: ld returned 1 exit status
make[2]: *** [32/] Error 1
make[2]: Leaving directory `/root/gcc-3.4.3/gcc'
make[1]: *** [stmp-multilib] Error 2
make[1]: Leaving directory `/root/gcc-3.4.3/gcc'
make: *** [all-gcc] Error 2
[root at localhost gcc-3.4.3]#

Because it fails with a general ./configure like this, Im thinking theres
something wrong with my fedora toolchain. I found the crti.o file
in /usr/lib64. I installed fedora without any multilib support to get a
pure 64 bit enviroment. Im guessing this shouldnt be an issue, right?

Google didnt return anything when putting in the error message.

Does any of you guys have an idea?


John Nielsen

More information about the lfs-support mailing list