This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Troubles building gcc for sh-elf
- To: ecos-discuss at sources dot redhat dot com
- Subject: [ECOS] Troubles building gcc for sh-elf
- From: Stephen Williams <steve at icarus dot com>
- Date: Mon, 20 Nov 2000 18:37:42 -0800
- cc: steve at icarus dot com
This is not working for me. I am able to build binutils-2.10.1 --target=sh-elf
no problem on my Linux/alpha machine, but when I try to compile the
gcc-20001113 snapshot, get the error shown below. I believe it's getting
the right assembler, and when I try for example binutils-2.9 it fails
even earlier.
However, I don't see a problem with binutils. I generated the .s file
with that command and looked on line 86. It is here...
.type _fini_dummy,@function
_fini_dummy:
mov.l r14,@-r15
mov r15,r14
.section .fini
mov.l 1f,r1
mova 2f,r0
braf r1
lds r0,pr
0: .p2align 2
1: .long ___do_global_dtors_aux - 0b # <--- line 86
2:
It seems to be failing on the expression ``___do_global_dtors_aux - 0b''.
Sure enough, 0b is on the previous line (and this code is in the .fini section)
but the __do_global_dtors_aux is way back around line 20, and in the .text
section. I can't be the only one who is trying to get eCos to happen on
an sh processor, it's listed as a supported product, for Pete's sake!
It's acting as if the target type is not supported and I should be using
something other the --target=sh-elf.
So what should I be doing differently, that will be compatible with
eCos?
make[3]: Entering directory `/usr/local/src/obj/sh-elf/gcc-20001113/gcc'
/usr/local/src/obj/sh-elf/gcc-20001113/gcc/xgcc -B/usr/local/src/obj/sh-elf/gcc-20001113/gcc/ -nostdinc -B/usr/local/src/obj/sh-elf/gcc-20001113/sh-elf/newlib/ -isystem /usr/local/src/obj/sh-elf/gcc-20001113/sh-elf/newlib/targ-include -isystem /usr/local/src/gcc-20001113/newlib/libc/include -B/usr/local/sh-elf/bin/ -B/usr/local/sh-elf/lib/ -isystem /usr/local/sh-elf/include -DCROSS_COMPILE -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -I. -I. -I/usr/local/src/gcc-20001113/gcc -I/usr/local/src/gcc-20001113/gcc/. -I/usr/local/src/gcc-20001113/gcc/config -I/usr/local/src/gcc-20001113/gcc/../include -g0 \
-finhibit-size-directive -fno-inline-functions \
-fno-exceptions -Dinhibit_libc \
-c /usr/local/src/gcc-20001113/gcc/crtstuff.c -DCRT_BEGIN -o crtbegin.o
/tmp/ccJ5bmCL.s: Assembler messages:
/tmp/ccJ5bmCL.s:86: Error: operation combines symbols in different segments
make[3]: *** [crtbegin.o] Error 1
make[3]: Leaving directory `/usr/local/src/obj/sh-elf/gcc-20001113/gcc'
make[2]: *** [crtbegin.o] Error 2
make[2]: Leaving directory `/usr/local/src/obj/sh-elf/gcc-20001113/gcc'
make[1]: *** [stmp-multilib] Error 2
make[1]: Leaving directory `/usr/local/src/obj/sh-elf/gcc-20001113/gcc'
make: *** [all-gcc] Error 2
--
Steve Williams "The woods are lovely, dark and deep.
steve@icarus.com But I have promises to keep,
steve@picturel.com and lines to code before I sleep,
http://www.picturel.com And lines to code before I sleep."