This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


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

Troubles building gcc for sh-elf



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."



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