This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [ping] Re: [patch] PR40134, use a linker script on arm-linux to link with -lgcc_s -lgcc
Matthias Klose wrote:
> On 24.09.2009 10:42, Andrew Haley wrote:
>> Matthias Klose wrote:
>>> On 22.09.2009 17:56, Andrew Haley wrote:
>>>> Matthias Klose wrote:
>>>>> On 11.09.2009 19:12, Matthias Klose wrote:
>>>>
>>>>>> Applied and checked the attach patch on top of your patch, ran the
>>>>>> testsuite without regressions (applied the patch for pr40133 from
>>>>>> Paolo
>>>>>> for the same test run as well).
>>>>>>
>>>>>> Matthias
>>>>>
>>>>> updated the patch to only for arm*-*-linux-*eabi; test results at
>>>>> http://gcc.gnu.org/ml/gcc-testresults/2009-09/msg02000.html
>>>>>
>>>>> Ok for the trunk?
>>>>
>>>> I'm not at all happy that backtraces are failing now on Java, but I
>>>> guess your
>>>> patch didn't cause that. OK by me.
>>>
>>> Without this patch, the build of libjava fails on arm*-*-linux-*eabi:
>>>
>>> /usr/bin/ld: .libs/jv-convert: hidden symbol `__sync_synchronize' in
>>> /root/gcc/newgccsnapshot/gcc-snapshot-20090919/build/./gcc/libgcc.a(linux-atomic.o)
>>>
>>> is referenced by DSO
>>> /usr/bin/ld: final link failed: Nonrepresentable section on output
>>> collect2: ld returned 1 exit status
>>> make[5]: *** [jv-convert] Error 1
>>>
>>> Full buildlog at http://people.debian.org/~doko/tmp/snapshot.log.bz2
>>>
>>> The reason for this is not linking the shared libgcj with -lgcc.
>>
>> I find this extremely surprising. LDFLAGS are explicitly set to do
>> that when building libgcc. I did this myself, and I'm pretty sure that
>> it works.
>>
>> svn diff -r150701:150702
>
> The setting of LDFLAGS to "-Wl,-lgcc" (working around libtool
> assumptions) in the Makefile gets overwritten to the empty value when
> called by the toplevel make, so this has no effect. The intent to do
> this with a linker script was to have it done for every usage.
I agree that a linker script is a better idea, I just wanted to know why
my fix wasn't working. Thanks for that.
>>> Am I allowed to check in this patch to fix the build failure, or do I
>>> have to wait for an approval of an ARM maintainer?
>>
>> I think you need an ARM maintainer, but I first want to know why your
>> build isn't linking with libgcc.
>
> Ok, Richard is seems to be in vacation until early October.
Righto.
Andrew.