This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: v850 ld failure for v850-rtems on master
- From: Joel Sherrill <joel dot sherrill at oarcorp dot com>
- To: Nick Clifton <nickc at redhat dot com>, "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Mon, 21 Mar 2016 13:16:33 -0500
- Subject: Re: v850 ld failure for v850-rtems on master
- Authentication-results: sourceware.org; auth=none
- References: <56EEB97F dot 30605 at oarcorp dot com> <56F034F9 dot 6060508 at redhat dot com>
On 3/21/2016 12:52 PM, Nick Clifton wrote:
Hi Joel,
v850-rtems4.12-gcc -B../../../../../v850e1sim/lib/ -specs bsp_specs -qrtems -DHAVE_CONFIG_H -I. -I../../../../../../../rtems/c/src/../../testsuites/samples/hello -I.. -mv850e1 -O2 -g -ffunction-sections -fdata-sections -Wall -Wmissing-prototypes -Wimplicit-function-declaration -Wstrict-prototypes -Wnested-externs -MT init.o -MD -MP -MF .deps/init.Tpo -c -o init.o ../../../../../../../rtems/c/src/../../testsuites/samples/hello/init.c
mv -f .deps/init.Tpo .deps/init.Po
v850-rtems4.12-gcc -B../../../../../v850e1sim/lib/ -specs bsp_specs -qrtems -mv850e1 -O2 -g -ffunction-sections -fdata-sections -Wall -Wmissing-prototypes -Wimplicit-function-declaration -Wstrict-prototypes -Wnested-externs -Wl,--gc-sections -mv850e1 -o hello.exe init.o
/data/home/joel/test-gcc/install-head/bin/../lib/gcc/v850-rtems4.12/6.0.0/../../../../v850-rtems4.12/bin/ld: cannot represent machine `v850-rh850'
Any ideas what might have broken?
I cannot reproduce this, but I do not have an RTEMS system (or an RTEMS sysroot)
so that is not surprising.
RTEMS is always cross built so it is like CPU-elf from a tools
building perspective. Basic one-tree style build.
But this failure required getting far enough to build RTEMS
and a BSP. Each BSP has its own linker script and you pointed
me at the problem below.
I suspect that it might have something to do with
this patch:
2016-03-09 Pedro Alves <palves@redhat.com>
* cpu-v850.c (N): Append ":old-gcc-abi" instead of " (using old
gcc ABI)" to printable name.
* cpu-v850_rh850.c (bfd_v850_rh850_arch): Use "v850:rh850" instead
of "v850-rh850" as printable name.
Which is from:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=4b05e0a74b3fb21b56e821423b8a334e4be9cfe7
Thanks. We have our own linker scripts and that change appears to be the
breakage. This is the short version of what I had to change on our side.
-OUTPUT_ARCH(v850-rh850)
+OUTPUT_ARCH(v850:rh850)
Good reason to periodically check against master and report. :)
Thanks.
--joel
Cheers
Nick