Hi all! akosv:/home/akos# gcc --version gcc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. I am using the next source packages to build a cross-toolchain for arm-linux: binutils-2.17 gcc-4.0.2 linux-2.6.21. uclibc-0.9.29 I have successfully built the binutils package with the commands: TARGET=arm-linux PREFIX=/home/akos/ARM/tools akos@akosv:~/ARM/build-tools/build/gcc$ ../../binutils-2.17/configure --target=${TARGET} --prefix=${PREFIX} akos@akosv:~/ARM/build-tools/build/gcc$ make akos@akosv:~/ARM/build-tools/build/gcc$ make install Everything works fine, they build, they install Next, I try to compile a bootstrap-compiler with which I can compile the uClibc library, and the final compiler afterwards. I have read a lot of howtos regarding how to do this, but none of them worked for me... maybe i am missing something, i don't know. Anyhow, as far as I understand, I should be able to build gcc without *any* libraries, and afterwards I can use that minimalist compiler to build a library for itself, and then build a full compiler. When I try building the bootstrap compiler, it fails: I don't know how to interpret the warning that autoconf issues, but I think it can be ignored... Please correct me if I'm wrong Oh, and pls tell me what this libmudflap is... I have read it must be disabled, but it doesn't say what it is akos@akosv:~/ARM/build-tools/build/gcc$ ../../gcc-4.0.2/configure --target=${TARGET} --prefix=${PREFIX} --program-prefix=${TARGET} --disable-threads --enable-languages=c --disable-libmudflap creating cache ./config.cache checking host system type... i686-pc-linux-gnu checking target system type... arm-unknown-linux-gnu checking build system type... i686-pc-linux-gnu checking for a BSD compatible install... /usr/bin/install -c checking whether ln works... yes checking whether ln -s works... yes checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking for gnatbind... gnatbind checking whether compiler driver understands Ada... yes checking how to compare bootstrapped objects... cmp --ignore-initial=16 $$f1 $$f2 checking for correct version of gmp.h... yes checking for MPFR... yes *** This configuration is not supported in the following subdirectories: target-libmudflap target-libada target-libstdc++-v3 target-libgfortran target-libffi target-boehm-gc target-zlib target-libjava zlib fastjar target-libobjc (Any other directories should still work fine.) checking for bison... bison checking for bison... bison -y checking for gm4... no checking for gnum4... no checking for m4... m4 checking for flex... flex checking for flex... flex checking for makeinfo... makeinfo checking for i686-pc-linux-gnu-ar... no checking for ar... ar checking for i686-pc-linux-gnu-as... no checking for as... as checking for i686-pc-linux-gnu-dlltool... no checking for dlltool... dlltool checking for i686-pc-linux-gnu-ld... no checking for ld... ld checking for i686-pc-linux-gnu-nm... no checking for nm... nm checking for i686-pc-linux-gnu-ranlib... no checking for ranlib... ranlib checking for i686-pc-linux-gnu-windres... no checking for windres... windres checking for i686-pc-linux-gnu-objcopy... no checking for objcopy... objcopy checking for i686-pc-linux-gnu-objdump... no checking for objdump... objdump checking for arm-linux-ar... arm-linux-ar checking for arm-linux-as... arm-linux-as checking for arm-linux-dlltool... no checking for arm-linux-ld... arm-linux-ld checking for arm-linux-nm... arm-linux-nm checking for arm-linux-ranlib... arm-linux-ranlib checking for arm-linux-windres... no checking whether to enable maintainer-specific portions of Makefiles... no checking if symbolic links between directories work... yes updating cache ./config.cache creating ./config.status creating Makefile akos@akosv:~/ARM/build-tools/build/gcc$ make (...) builds for a few minutes (...) /home/akos/ARM/build-tools/build/gcc/gcc/xgcc -B/home/akos/ARM/build-tools/build/gcc/gcc/ -B/home/akos/ARM/tools/arm-linux/bin/ -B/home/akos/ARM/tools/arm-linux/lib/ -isystem /home/akos/ARM/tools/arm-linux/include -isystem /home/akos/ARM/tools/arm-linux/sys-include -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fomit-frame-pointer -fPIC -g0 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -shared -nodefaultlibs -Wl,--soname=libgcc_s.so.1 -Wl,--version-script=libgcc/./libgcc.map -o ./libgcc_s.so.1.tmp libgcc/./_udivsi3_s.o libgcc/./_divsi3_s.o libgcc/./_umodsi3_s.o libgcc/./_modsi3_s.o libgcc/./_dvmd_lnx_s.o libgcc/./_muldi3_s.o libgcc/./_negdi2_s.o libgcc/./_lshrdi3_s.o libgcc/./_ashldi3_s.o libgcc/./_ashrdi3_s.o libgcc/./_cmpdi2_s.o libgcc/./_ucmpdi2_s.o libgcc/./_floatdidf_s.o libgcc/./_floatdisf_s.o libgcc/./_fixunsdfsi_s.o libgcc/./_fixunssfsi_s.o libgcc/./_fixunsdfdi_s.o libgcc/./_fixdfdi_s.o libgcc/./_fixunssfdi_s.o libgcc/./_fixsfdi_s.o libgcc/./_fixxfdi_s.o libgcc/./_fixunsxfdi_s.o libgcc/./_floatdixf_s.o libgcc/./_fixunsxfsi_s.o libgcc/./_fixtfdi_s.o libgcc/./_fixunstfdi_s.o libgcc/./_floatditf_s.o libgcc/./_clear_cache_s.o libgcc/./_enable_execute_stack_s.o libgcc/./_trampoline_s.o libgcc/./__main_s.o libgcc/./_absvsi2_s.o libgcc/./_absvdi2_s.o libgcc/./_addvsi3_s.o libgcc/./_addvdi3_s.o libgcc/./_subvsi3_s.o libgcc/./_subvdi3_s.o libgcc/./_mulvsi3_s.o libgcc/./_mulvdi3_s.o libgcc/./_negvsi2_s.o libgcc/./_negvdi2_s.o libgcc/./_ctors_s.o libgcc/./_ffssi2_s.o libgcc/./_ffsdi2_s.o libgcc/./_clz_s.o libgcc/./_clzsi2_s.o libgcc/./_clzdi2_s.o libgcc/./_ctzsi2_s.o libgcc/./_ctzdi2_s.o libgcc/./_popcount_tab_s.o libgcc/./_popcountsi2_s.o libgcc/./_popcountdi2_s.o libgcc/./_paritysi2_s.o libgcc/./_paritydi2_s.o libgcc/./_powisf2_s.o libgcc/./_powidf2_s.o libgcc/./_powixf2_s.o libgcc/./_powitf2_s.o libgcc/./_mulsc3_s.o libgcc/./_muldc3_s.o libgcc/./_mulxc3_s.o libgcc/./_multc3_s.o libgcc/./_divsc3_s.o libgcc/./_divdc3_s.o libgcc/./_divxc3_s.o libgcc/./_divtc3_s.o libgcc/./_divdi3_s.o libgcc/./_moddi3_s.o libgcc/./_udivdi3_s.o libgcc/./_umoddi3_s.o libgcc/./_udiv_w_sdiv_s.o libgcc/./_udivmoddi4_s.o libgcc/./unwind-dw2_s.o libgcc/./unwind-dw2-fde-glibc_s.o libgcc/./unwind-sjlj_s.o libgcc/./gthr-gnat_s.o libgcc/./unwind-c_s.o -lc && rm -f ./libgcc_s.so && if [ -f ./libgcc_s.so.1 ]; then mv -f ./libgcc_s.so.1 ./libgcc_s.so.1.backup; else true; fi && mv ./libgcc_s.so.1.tmp ./libgcc_s.so.1 && ln -s libgcc_s.so.1 ./libgcc_s.so /home/akos/ARM/tools/arm-linux/bin/ld: crti.o: No such file: No such file or directory collect2: ld returned 1 exit status make[2]: *** [libgcc_s.so] Error 1 make[2]: Leaving directory `/home/akos/ARM/build-tools/build/gcc/gcc' make[1]: *** [libgcc.a] Error 2 make[1]: Leaving directory `/home/akos/ARM/build-tools/build/gcc/gcc' make: *** [all-gcc] Error 2 There are a few things I don't really understand: 1. what is it doing in libgcc? Didn't I just tell him *not* to use any libraries? 2. why is it linking to crti.o? 3. why doesn't it work? :D:P Thanks in advance for your kind help, Akos Vandra _________________________________________________________________________________ How would you spend $50,000 to create a more sustainable environment in Australia? Go to Yahoo!7 Answers and share your idea. http://advision.webevents.yahoo.com/aunz/lifestyle/answers/y7ans-babp_reg.html