[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gold/18703] Symbol version and Version script incompatibility with

From: tmsriram at google dot com
Subject: [Bug gold/18703] Symbol version and Version script incompatibility with BFD ld
Date: Wed, 22 Jul 2015 20:40:44 +0000


--- Comment #17 from Sriraman Tallam <tmsriram at google dot com> ---
On Wed, Jul 22, 2015 at 11:24 AM, hjl.tools at gmail dot com
<address@hidden> wrote:
> https://sourceware.org/bugzilla/show_bug.cgi?id=18703
> --- Comment #16 from H.J. Lu <hjl.tools at gmail dot com> ---
> (In reply to Sriraman Tallam from comment #15)
>> H.J. :  Can we use Cary's idea to fix libgcc/config/i386/cpuinfo.c to
>> make libgcc_s.so.1 do the right thing with gold too until this issue
>> is resolved in some manner?
> You can pass -fuse-ld=bfd to build libgcc_s.so.1 on Linux:
> diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux
> index 11bb46e..12aab16 100644
> --- a/libgcc/config/i386/t-linux
> +++ b/libgcc/config/i386/t-linux
> @@ -3,4 +3,8 @@
>  # t-slibgcc-elf-ver and t-linux
>  SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver
> +# Work around gold bug:
> +# https://sourceware.org/bugzilla/show_bug.cgi?id=18703
> +SHLIB_LDFLAGS += -fuse-ld=bfd
> +
>  HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER
> Or you have to make sure those symbols in both libgcc.a and libgcc.so.1
> are correct.

Thanks this works.  However, i ran into another problem.  Our GCC
build does not use -fvisibility=hidden to build libgcc.a. So,
__cpu_indicator_init is GLOBAL in libgcc.a and not LOCAL.  Which means
any shared object that references __cpu_indicator_init will still
create a PLT entry for it and fail at run-time.

This is not directly related to this bug but thought I would mention
it here while we are fixing this problem.


> --
> You are receiving this mail because:
> You reported the bug.

You are receiving this mail because:
You are on the CC list for the bug.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]