Trouble crosscompiling gcc-3.3 for sh-elf (dreamcast)

Christian Herrmann paras.rasmatazz@t-online.de
Tue Apr 8 07:01:00 GMT 2003


I want to crosscompile gcc for the sh-elf target (dreamcast sh4), i am using 
the gcc-20030331 snapshot.

(I am using environment variables for target, prefix and path. I wrote the 
real values here for better reading)

First i compile binutils-2.12 with
configure --target=sh-elf --prefix=/usr/local/dc/sh-elf
make all install

Then i export the PATH to my new directory:
export PATH=$PATH:/usr/local/dc/sh-elf/bin

Then i configure and compile gcc (for compiling newlib) with 
configure --target=sh-elf --prefix=/usr/local/dc/sh-elf --without-headers 
--with-newlib --enable-languages=c
make all install

then i compile newlib with that gcc with
configure --target=sh-elf --prefix/usr/local/dc/sh-elf
make all install

then i reconfigure gcc with 
configure --target=sh-elf --prefix=/usr/local/dc --without-headers 
--with-newlib --enable-languages=c,c++

when typing 'make all install' , compiling fails after a while with the 
following error:

/gcc/build-gcc/gcc/xgcc -B/gcc/build-gcc/gcc/ 
-B/usr/local/dc/sh-elf/sh-elf/bin/ -B/usr/local/dc/sh-elf/sh-elf/lib/ 
-isystem /usr/local/dc/sh-elf/sh-elf/include -c -DHAVE_CONFIG_H -O2 -g -O2 
-I. -I../../../gcc-20030331/libiberty/../include  -W -Wall -Wtraditional 
-pedantic ../../../gcc-20030331/libiberty/hashtab.c -o hashtab.o
../../../gcc-20030331/libiberty/hashtab.c: In function `higher_prime_number':
../../../gcc-20030331/libiberty/hashtab.c:133: Warnung: implicit declaration 
of function `abort'
../../../gcc-20030331/libiberty/hashtab.c: In function `htab_create':
../../../gcc-20030331/libiberty/hashtab.c:204: error: `free' undeclared (first 
use in this function)
../../../gcc-20030331/libiberty/hashtab.c:204: error: (Each undeclared 
identifier is reported only once
../../../gcc-20030331/libiberty/hashtab.c:204: error: for each function it 
appears in.)
../../../gcc-20030331/libiberty/hashtab.c: In function `htab_try_create':
../../../gcc-20030331/libiberty/hashtab.c:214: error: `calloc' undeclared 
(first use in this function)
../../../gcc-20030331/libiberty/hashtab.c:214: error: `free' undeclared (first 
use in this function)
make[1]: *** [hashtab.o] Fehler 1
make[1]: Verlassen des Verzeichnisses »/gcc/build-gcc/sh-elf/libiberty«
make: *** [all-target-libiberty] Fehler 2

Compiling an old gcc (3.0.4) works perfectly, but according to Marcus 
Comstedt, gcc Versions before 3.3 have bugs in their SH4 codegen, and that's 
the reason i need to use a snapshot of the 3.3 branch. Any ideas ?

Regards,

Chris


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



More information about the crossgcc mailing list