This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Trying to build a cross compiler from linux to netbsd...


using egcs 1.0.3a (other compilers aren't an option, unfortunately, the
vendor says that this is the only one guaranteed to work).  Anyway, we
have Linux boxes and need to cross compile to Netbsd (more particularly,
i386 a.out format executables).  The following is one attempt:

Binutils builds with:

../binutils-2.10.1/configure --host=i686-pc-linux-gnu --target=i386-aout
--prefix=/home/usr/local

so that much of the cross compiler tools seems to work fine (the tools
may not, but that's for later).

Trying to build egcs 1.0.3a with:

../egcs-1.0.3a/configure --host=i686-pc-linux-gnu --target=i386-aout
--prefix=/home/usr/local

Which ultimately generates the following error:

ln collect2 ld
/home/egcs/gcc/xgcc -B/home/egcs/gcc/ -DCROSS_COMPILE -DIN_GCC    -g -O2

-I./include  -I. -I../../egcs-1.0.3a/gcc -I../../egcs-1.0.3a/gcc/config
\
-c ../../egcs-1.0.3a/gcc/objc/hash.c -o objc/hash.o
In file included from ../../egcs-1.0.3a/gcc/objc/hash.c:31:
../../egcs-1.0.3a/gcc/objc/runtime.h:31: stdio.h: No such file or
directory
../../egcs-1.0.3a/gcc/objc/runtime.h:32: ctype.h: No such file or
directory
In file included from ../../egcs-1.0.3a/gcc/objc/runtime.h:38,
                 from ../../egcs-1.0.3a/gcc/objc/hash.c:31:
include/objc/objc-api.h:33: stdio.h: No such file or directory
make[1]: *** [objc/hash.o] Error 1
make[1]: Leaving directory `/home/egcs/gcc'
make: *** [all-gcc] Error 2

and checking objc-api.h, it requires stdio.h and ctype.h and, equally
obviously it's not finding them.  configure.in and makefile.in are a
second (more like sixth) language to me so I'm having problems figuring
out exactly what's going on here, but it looks as if xgcc isn't picking
up the system include files and hasn't supplied links to the needed ones
during the initial configure phase and I can't figure out how to get the
-idirafter (which was my initial thought on fixing the problem) put in
the right place.

I've tried a couple other things with no success, specifically:

../egcs-1.0.3a/configure --host=I386-unknown-linux-gnu
--target=i386-unknown-netbsd --prefix=/home/usr/local

Which generates a different error but related in the sense that there is
no include file for machine/ansi.h (required for all netbsd-like
compiles).

cp ../../egcs-1.0.3a/gcc/README-fixinc include/README
chmod a+r include/README
touch stmp-int-hdrs
rm -f SYSCALLS.c tmp-SYSCALLS.s
cat ../../egcs-1.0.3a/gcc/sys-types.h ../../egcs-1.0.3a/gcc/sys-protos.h
> SYSCALLS.c
/home/egcs/gcc/xgcc -B/home/egcs/gcc/ -DCROSS_COMPILE -DIN_GCC    -g -O2
-I./include     -I. -I../../egcs-1.0.3a/gcc -I../../egcs-1.
0.3a/gcc/config \
  -aux-info SYSCALLS.c.X -S -o tmp-SYSCALLS.s SYSCALLS.c
In file included from SYSCALLS.c:86:
include/stddef.h:28: machine/ansi.h: No such file or directory
make[1]: *** [SYSCALLS.c.X] Error 1
make[1]: Leaving directory `/home/egcs/gcc'
make: *** [all-gcc] Error 2

So clearly I'm missing the boat on something and what is the question.

Any and all help will be appreciated.

TIA

Dick Munroe






------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]