This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Link problems with PowerPC cross-compiler
- To: gcc at gcc dot gnu dot org
- Subject: Link problems with PowerPC cross-compiler
- From: Joe MacDonald <joe at deserted dot net>
- Date: Mon, 23 Apr 2001 10:51:31 -0400
Sorry if this is a partcularly bone-headed question. I saw some
discussion of similar problems in the mail archives, but it seemed to be
limited to the gcc 3.0 tree and I didn't see which Makefile.in I was
supposed to edit.
The question, unfortunately, is 'what am I doing wrong?' I've built a
PowerPC eabi cross-compiler, hosted on a Sparc Solaris 2.6 machine using
the directions at http://www.objsw.com/CrossGCC/FAQ-4.html and the
one-tree script. The build seems to have gone okay, but when I try to
compile my test code:
#include <stdlib.h>
#include <stdio.h>
int main ()
{
printf ("hello\n");
}
with this line:
/usr/local/powerpc-eabi/bin/powerpc-eabi-gcc -static -v -o hello -Wl,-Ttext,0x4000,-Tdata,0x10000 /usr/local/powerpc-eabi/powerpc-eabi/lib/sim-crt0.o hello.c -lc -lsim
I get:
Reading specs from /usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/specs
gcc version 2.95.2 19991024 (release)
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/cpp -lang-c -v -iprefix /opt/magellan/3rdparty/sol_2/cygnus/powerpc-eabi/2.95.2/ -D__GNUC__=2 -D__GNUC_MINOR__=95 -DPPC -D__embedded__ -D__PPC__ -D__embedded__ -D__PPC -Asystem(embedded) -Acpu(powerpc) -Amachine(powerpc) -D__CHAR_UNSIGNED__ -D_CALL_SYSV -D_BIG_ENDIAN -D__BIG_ENDIAN__ -Amachine(bigendian) -D_ARCH_PPC hello.c /var/tmp/ccBrnkPj.i
GNU CPP version 2.95.2 19991024 (release) (PowerPC Embedded)
#include "..." search starts here:
#include <...> search starts here:
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/include
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/../../../../powerpc-eabi/include
End of search list.
The following default directories have been omitted from the search
path:
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/../../../../include/g++-3
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/../../../../powerpc-eabi/sys-include
End of omitted list.
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/cc1 /var/tmp/ccBrnkPj.i -quiet -dumpbase hello.c -version -o /var/tmp/ccceiSex.s
GNU C version 2.95.2 19991024 (release) (powerpc-eabi) compiled by GNU C version 2.7-bnr-981120.
/usr/local/powerpc-eabi/powerpc-eabi/bin/as -mppc -V -Qy -o /var/tmp/cctwAX8R.o /var/tmp/ccceiSex.s
GNU assembler version 2.9.1 (powerpc-eabi), using BFD version 2.9.1
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/collect2 -V -Qy -dn -Bstatic -o hello -L/opt/magellan/3rdparty/sol_2/cygnus -L/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2 -L/usr/local/powerpc-eabi/powerpc-eabi/lib -Ttext 0x4000 -Tdata 0x10000 /localdisk/jjmac/usr/local/encap/powerpc-eabi/powerpc-eabi/lib/sim-crt0.o /var/tmp/cctwAX8R.o -lc -lsim /usr/local/encap/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a /usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x8): undefined reference to `__SDATA_START__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0xc): undefined reference to `__SBSS_END__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x14): undefined reference to `__SDATA2_START__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x18): undefined reference to `__SBSS2_END__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x1c): undefined reference to `__GOT_START__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x28): undefined reference to `__GOT_END__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x2c): undefined reference to `__GOT2_START__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x30): undefined reference to `__GOT2_END__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x34): undefined reference to `__FIXUP_START__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x38): undefined reference to `__FIXUP_END__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x4c): undefined reference to `__EXCEPT_START__'
/usr/local/powerpc-eabi/lib/gcc-lib/powerpc-eabi/2.95.2/libgcc.a(eabi.o)(.got2+0x50): undefined reference to `__EXCEPT_END__'
GNU ld version 2.9.1 (with BFD 2.9.1)
Supported emulations:
elf32ppc
collect2: ld returned 1 exit status
Can someone point out what I'm doing wrong? I'm using gcc-2.95.2,
newlib-1.8.2, binutils-2.9.1 and gdb-5.0
Thanks,
-Joe.
--
-Joe MacDonald.
------------------------------------------------------------------------
X windows:
If it ain't broke, fix it.