Can't build gcc-3.0.1 for m68k-coff
Larry Gray
larry@greenmotor.com
Fri Oct 12 13:09:00 GMT 2001
Hello,
I'm trying to build a cross compiler for m68k-coff with gcc-3.0.1,
binutils-2.11.2, and newlib-1.9.0. As I mentioned in my previous message,
I've followed "Getting Started with GNU" by William Gatliff, to the letter,
with the exception of substituting m68k-coff for the target.
All goes well until I try to build the complete compiler, this fails with:
checking whether the C compiler (/newgcc/build-gcc/gcc/xgcc
-B/newgcc/build-gcc/gcc/ -B/newgcc/install/m68k-coff/bin/
-B/newgcc/install/m68k-coff/lib/ -isystem /newgcc/install/m68k-coff/include
-g -O2 ) works... no
configure: error: installation or configuration problem: C compiler cannot
create executables.
make: *** [configure-target-libiberty] Error 1
David Korn (thanks David) suggested the problem is either a $PATH or config
option problem. After some investigation I believe it is a config option
problem, or more specifically a problem in configure.in. At the bottom of
/newgcc/build-gcc/m68k-coff/libiberty/config.log I have:
/newgcc/build-gcc/gcc/libgcc.a(__main.o): In function `__do_global_dtors':
/newgcc/build-gcc/gcc/../../gcc-3.0.1/gcc/libgcc2.c(.text+0x30): undefined
reference to `__EH_FRAME_BEGIN__'
/newgcc/build-gcc/gcc/libgcc.a(__main.o): In function `__do_global_ctors':
/newgcc/build-gcc/gcc/../../gcc-3.0.1/gcc/libgcc2.c(.text+0x50): undefined
reference to `__EH_FRAME_BEGIN__'
/newgcc/install/m68k-coff/lib/libc.a(abort.o): In function `abort':
/newgcc/build-newlib/m68k-coff/newlib/libc/stdlib/../../../../../newlib-1.9.0/newlib/libc/stdlib/abort.c:63:
undefined reference to `_exit'
/newgcc/install/m68k-coff/lib/libc.a(signalr.o): In function `_kill_r':
/newgcc/build-newlib/m68k-coff/newlib/libc/reent/../../../../../newlib-1.9.0/newlib/libc/reent/signalr.c:61:
undefined reference to `kill'
/newgcc/install/m68k-coff/lib/libc.a(signalr.o): In function `_getpid_r':
/newgcc/build-newlib/m68k-coff/newlib/libc/reent/../../../../../newlib-1.9.0/newlib/libc/reent/signalr.c:96:
undefined reference to `getpid'
/newgcc/install/m68k-coff/lib/libc.a(sbrkr.o): In function `_sbrk_r':
/newgcc/build-newlib/m68k-coff/newlib/libc/reent/../../../../../newlib-1.9.0/newlib/libc/reent/sbrkr.c:61:
undefined reference to `sbrk'
collect2: ld returned 1 exit status
configure: failed program was:
#line 1932 "configure"
#include "confdefs.h"
main(){return(0);}
I not sure about the __EH_FRAME_BEGIN__, but aren't abort, kill, getpid, and
sbrk supposed to be located in newlib's hardware specific library, like
libbcc.a or libnosys.a? Why would gcc need access to these libraries while
it's building itself? Or does this point to a problem with newlib-1.9.0?
Thanks in Advance,
Larry Gray
larry@greenmotor.com
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com
More information about the crossgcc
mailing list