On Jan 26, 1:28pm, Stephen Smith wrote: > I sent this message earlier, but never recieved my copy back, in fact I haven't recieved anything from plug today. > > I built a cross compiler for the motorola power pc according to instructions that I received from Mumit Khan > (in Wisconsin). According to the logs, the compiler installed correctly. > > As the fragment below shows, when I try to use the compiler, it can't find the _start entry. I am told that > the symbol is in the crt0* which is on my system. How do I tell the compiler where to find the the libraries for the link step. > > I think that that is my problem. > > > ssmith@AZ75-SSMITH ~ > > $ $target-gcc hello.c > > /usr/local/lib/gcc-lib/powerpc-motorola-elf/2.95.2-6/../../../../powerpc-motorola-elf/bin/ld: warning: cannot find entry symbol _start; > defaulting to 01800074 > > /cygdrive/c/DOCUME~1/ssmith/LOCALS~1/Temp/ccF4RY4I.o: In function `main': > > /cygdrive/c/DOCUME~1/ssmith/LOCALS~1/Temp/ccF4RY4I.o(.text+0x20): undefined reference to `printf' > > collect2: ld returned 1 exit status > > For your install, I think the linker is looking for crt0.o in /usr/local/powerpc-motorola-elf/lib/crt0.o. Just copy crt0.o from the target system to this location. (At least that's how I usually do it.) Doing "gcc -v -save-temps ..." is also helpful for diagnosing problems like this. (The -save-temps will cause the intermediate files to be preserved. This is helpful if you need to debug one of the toolchain components.) Kevin