Shaun Jackman wrote: > I'm compiling > binutils 2.18 > mpfr 2.3.1 > gcc 4.3.0 > with Red Hat Enterprise Linux WS release 4 (Nahant Update 4) > and gcc 3.4.6 20060404 (Red Hat 3.4.6-3). I'm assuming that host and target are x86_64-unknown-linux-gnu (those are good to specify in a report.) > /home/sjackman/src/gnu/gcc-4.3.0/_build/./gcc/xgcc -B/home/sjackman/ > src/gnu/gcc-4.3.0/_build/./gcc/ -B/home/sjackman/arch/xhost/x86_64- > unknown-linux-gnu/bin/ -B/home/sjackman/arch/xhost/x86_64-unknown- > linux-gnu/lib/ -isystem /home/sjackman/arch/xhost/x86_64-unknown- > linux-gnu/include -isystem /home/sjackman/arch/xhost/x86_64-unknown- > linux-gnu/sys-include -O2 -O2 -g -g -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,-- > soname=libgcc_s.so.1 -Wl,--version-script=libgcc.map -o 32/ > libgcc_s.so.1.tmp -g -fkeep-inline-functions -m32 -B./ _muldi3_s.o Note -m32 in this command. > emutls_s.o -lc && rm -f 32/libgcc_s.so && if [ -f 32/libgcc_s.so.1 ]; > then mv -f 32/libgcc_s.so.1 32/libgcc_s.so.1.backup; else true; fi && > mv 32/libgcc_s.so.1.tmp 32/libgcc_s.so.1 && ln -s libgcc_s.so.1 32/ > libgcc_s.so > /home/sjackman/arch/xhost/x86_64-unknown-linux-gnu/bin/ld: crti.o: No > such file: No such file or directory It's trying to link a 32 bit libgcc, but you don't have the libc items required to be able to link 32 bit code. By default gcc on x86_64-linux is biarch and multilibbed, which means respectively that it accepts the -m32/-m64 switches to select the mode and that it builds both 32 and 64 bit versions of all the support libraries. You need to install your distro's 32 bit libc-dev package, or you need to --disable-multilib which will result in a compiler that doesn't support 32 bit mode. Brian