Wenton L. Davis wrote:
I am finally going to admit defeat and come ask for help on this. I am
trying to build a cross-compiler to run on an x86 machine for several
targets: ARM, MIPS, AVR, and m681x. I would like a single compiler to
handle those 4 architectures in addition to the x86, eventually.
However, for now, I am just trying to get the individual targets able to
compile.
I can get the binutils to compile/install/run just fine. The compiler
build, however, is not cooperating, and I am almost certain I am
overlooking something remarkably simple, but I just don't see it. I
have my source tree installed in /mnt/tmp/gcc-4.1.2 and I am building in
/mnt/tmp/objdir. (I found one recommendation to always build in a
seperate directory.) I configure it with the following (as run from in
objdir):
../gcc-4.1.2/configure --prefix=/mnt/tmp --program-prefix=mips-elf- \
--target=mips-elf --enable-threads=posix --enable-shared \
--enable-languages=c --disable-checking --with-gnu-ld --verbose
This should, as I understand it, build the MIPS's compiler and after
running "make install"put it in the /mnt/tmp/bin directory, prefixing
each executable with "mips-elf-" right?
After configure runs, I just type 'make' to build the compiler.
Everything goes OK (now that I figured out the --enable-threads=posix
thing), until I get to this (I apologize about the formatting, but I
wanted to send exactly what I see):
from ../../gcc-4.1.2/gcc/unwind-dw2.c:42:
../../gcc-4.1.2/gcc/gthr-posix.h:43:21: error: pthread.h: No such file
or directory
OK, take a step backawards. You're building a cross-compiler for MIPS, but
what operating system / C library do you intend to target? gcc doesn't contain
a C library, and you are going to need one. gcc also needs to know what OS
your target is going to run.
You can use newlib as a minimal target C library, but I'm not sure if that's
what you want.
Andrew.