<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><DIV>After having difficulties with CLFS book 1.0.0-PowerPC, per Ken's suggestion I did try the current clfs book Version SVN-20080629-PowerPC, and I was able to build everything up to and including glibc OK, but the Cross Compiler Final step is failing with the linker not finding crti.o.</DIV>
<DIV> </DIV>
<DIV>crti.o is found at /tools/lib/crti.o, of course /tools is a link to /mnt/clfs/tools, so the actual file is at /mnt/clfs/tools/lib/crti.o</DIV>
<DIV> </DIV>
<DIV>I've been extremely careful when entering the command line to build clfs, so I'm not sure what's wrong here.</DIV>
<DIV> </DIV>
<DIV>make output:</DIV><FONT size=2>
<P>make[1]: Entering directory `/mnt/clfs/sources/gcc-build'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/libiberty'</P>
<P>make[3]: Entering directory `/mnt/clfs/sources/gcc-build/libiberty/testsuite'</P>
<P>make[3]: Nothing to be done for `all'.</P>
<P>make[3]: Leaving directory `/mnt/clfs/sources/gcc-build/libiberty/testsuite'</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/libiberty'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/fixincludes'</P>
<P>make[2]: Nothing to be done for `all'.</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/fixincludes'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/intl'</P>
<P>make[2]: Nothing to be done for `all'.</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/intl'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/build-i686-cross-linux-gnu/libiberty'</P>
<P>make[3]: Entering directory `/mnt/clfs/sources/gcc-build/build-i686-cross-linux-gnu/libiberty/testsuite'</P>
<P>make[3]: Nothing to be done for `all'.</P>
<P>make[3]: Leaving directory `/mnt/clfs/sources/gcc-build/build-i686-cross-linux-gnu/libiberty/testsuite'</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/build-i686-cross-linux-gnu/libiberty'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/build-i686-cross-linux-gnu/fixincludes'</P>
<P>make[2]: Nothing to be done for `all'.</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/build-i686-cross-linux-gnu/fixincludes'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/libcpp'</P>
<P>make[2]: Nothing to be done for `all'.</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/libcpp'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/libdecnumber'</P>
<P>make[2]: Nothing to be done for `all'.</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/libdecnumber'</P>
<P>make[2]: Entering directory `/mnt/clfs/sources/gcc-build/gcc'</P>
<P>make \</P>
<P>CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wmissing-format-attribute " \</P>
<P>CONFIG_H="config.h auto-host.h ../../gcc-4.2.4/gcc/../include/ansidecl.h" \</P>
<P>MAKEOVERRIDES= \</P>
<P>-f libgcc.mk all</P>
<P>make[3]: Entering directory `/mnt/clfs/sources/gcc-build/gcc'</P>
<P>make GCC_FOR_TARGET="/mnt/clfs/sources/gcc-build/./gcc/xgcc -B/mnt/clfs/sources/gcc-build/./gcc/ -B/cross-tools/powerpc-unknown-linux-gnu/bin/ -B/cross-tools/powerpc-unknown-linux-gnu/lib/ -isystem /cross-tools/powerpc-unknown-linux-gnu/include -isystem /cross-tools/powerpc-unknown-linux-gnu/sys-include" \</P>
<P>AR_FOR_TARGET="/cross-tools/powerpc-unknown-linux-gnu/bin/ar" \</P>
<P>AR_CREATE_FOR_TARGET="/cross-tools/powerpc-unknown-linux-gnu/bin/ar rc" \</P>
<P>AR_EXTRACT_FOR_TARGET="/cross-tools/powerpc-unknown-linux-gnu/bin/ar x" \</P>
<P>AR_FLAGS_FOR_TARGET="" \</P>
<P>CC="gcc" CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wmissing-format-attribute " \</P>
<P>BUILD_PREFIX="" \</P>
<P>BUILD_PREFIX_1="" \</P>
<P>LANGUAGES="" \</P>
<P>LIBGCC2_CFLAGS="-O2 -O2 -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -mlong-double-128 -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc " \</P>
<P>MULTILIB_CFLAGS="" T= crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o crtsavres.o</P>
<P>make[4]: Entering directory `/mnt/clfs/sources/gcc-build/gcc'</P>
<P>make[4]: `crtbegin.o' is up to date.</P>
<P>make[4]: `crtend.o' is up to date.</P>
<P>make[4]: `crtbeginS.o' is up to date.</P>
<P>make[4]: `crtendS.o' is up to date.</P>
<P>make[4]: `crtbeginT.o' is up to date.</P>
<P>make[4]: `ecrti.o' is up to date.</P>
<P>make[4]: `ecrtn.o' is up to date.</P>
<P>make[4]: `ncrti.o' is up to date.</P>
<P>make[4]: `ncrtn.o' is up to date.</P>
<P>make[4]: `crtsavres.o' is up to date.</P>
<P>make[4]: Leaving directory `/mnt/clfs/sources/gcc-build/gcc'</P>
<P>/mnt/clfs/sources/gcc-build/./gcc/xgcc -B/mnt/clfs/sources/gcc-build/./gcc/ -B/cross-tools/powerpc-unknown-linux-gnu/bin/ -B/cross-tools/powerpc-unknown-linux-gnu/lib/ -isystem /cross-tools/powerpc-unknown-linux-gnu/include -isystem /cross-tools/powerpc-unknown-linux-gnu/sys-include -O2 -O2 -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -mlong-double-128 -g -DHAVE_GTHR_DEFAULT -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/./_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/./_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/./_fixunssfsi_s.o libgcc/./_fixunsdfsi_s.o libgcc/./_fixunsxfsi_s.o libgcc/./_fixsfdi_s.o libgcc/./_fixunssfdi_s.o libgcc/./_floatdisf_s.o libgcc/./_floatundisf_s.o libgcc/./_fixdfdi_s.o libgcc/./_fixunsdfdi_s.o libgcc/./_floatdidf_s.o
 libgcc/./_floatundidf_s.o libgcc/./_fixxfdi_s.o libgcc/./_fixunsxfdi_s.o libgcc/./_floatdixf_s.o libgcc/./_floatundixf_s.o libgcc/./_fixtfdi_s.o libgcc/./_fixunstfdi_s.o libgcc/./_floatditf_s.o libgcc/./_floatunditf_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/./addsf3_s.o libgcc/./divsf3_s.o libgcc/./eqsf2_s.o libgcc/./gesf2_s.o libgcc/./lesf2_s.o libgcc/./mulsf3_s.o libgcc/./negsf2_s.o libgcc/./subsf3_s.o libgcc/./unordsf2_s.o libgcc/./fixsfsi_s.o libgcc/./floatsisf_s.o libgcc/./floatunsisf_s.o libgcc/./adddf3_s.o libgcc/./divdf3_s.o libgcc/./eqdf2_s.o libgcc/./gedf2_s.o libgcc/./ledf2_s.o libgcc/./muldf3_s.o libgcc/./negdf2_s.o libgcc/./subdf3_s.o libgcc/./unorddf2_s.o libgcc/./fixdfsi_s.o libgcc/./floatsidf_s.o libgcc/./floatunsidf_s.o libgcc/./extendsfdf2_s.o libgcc/./truncdfsf2_s.o libgcc/./tramp_s.o libgcc/./darwin-ldouble_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</P>
<P>/cross-tools/bin/powerpc-unknown-linux-gnu-ld: crti.o: No such file: No such file or directory</P>
<P>collect2: ld returned 1 exit status</P>
<P>make[3]: *** [libgcc_s.so] Error 1</P>
<P>make[3]: Leaving directory `/mnt/clfs/sources/gcc-build/gcc'</P>
<P>make[2]: *** [stmp-multilib] Error 2</P>
<P>make[2]: Leaving directory `/mnt/clfs/sources/gcc-build/gcc'</P>
<P>make[1]: *** [all-gcc] Error 2</P>
<P>make[1]: Leaving directory `/mnt/clfs/sources/gcc-build'</P>
<P>make: *** [all] Error 2</P>
<P></FONT> </P>
<P> </P>
<P>It looks like crti.o that is needed is in /tools, but the linker is looking in /cross-tools, so that's the area in which I'm searching.  I have not deviated from the book.</P>
<P> </P>
<P>Thanks, Anthony Drake</P>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"><BR><BR>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">
<DIV></DIV></DIV></DIV></DIV></div></body></html>