[prev in list] [next in list] [prev in thread] [next in thread] 

List:       binutils-bugs
Subject:    [Bug binutils/25135] New: Cannot link because of ".dynsym local symbol at index"
From:       "b.terrier at gmail dot com" <sourceware-bugzilla () sourceware ! org>
Date:       2019-10-26 14:12:22
Message-ID: bug-25135-70 () http ! sourceware ! org/bugzilla/
[Download RAW message or body]

https://sourceware.org/bugzilla/show_bug.cgi?id=25135

            Bug ID: 25135
           Summary: Cannot link because of ".dynsym local symbol at index"
           Product: binutils
           Version: 2.33
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: binutils
          Assignee: unassigned at sourceware dot org
          Reporter: b.terrier at gmail dot com
  Target Milestone: ---

After migrating from Ubuntu 19.04 to 19.10 I encounter the following errors
when trying to link against `libQt5WebKit.so` or `libQt5WebKitWidgets.so` (from
official qt.io release package):

> /usr/bin/ld: /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKitWidgets.so: .dynsym local \
>                 symbol at index 2 (>= sh_info of 2)
> /usr/bin/ld: /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKitWidgets.so: .dynsym local \
>                 symbol at index 3 (>= sh_info of 2)
> /usr/bin/ld: /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKitWidgets.so: .dynsym local \
>                 symbol at index 4 (>= sh_info of 2)
> /usr/bin/ld: /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKit.so: .dynsym local symbol at \
>                 index 2 (>= sh_info of 2)
> /usr/bin/ld: /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKit.so: .dynsym local symbol at \
>                 index 3 (>= sh_info of 2)
> /usr/bin/ld: /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKit.so: .dynsym local symbol at \
> index 4 (>= sh_info of 2)

Using the gold linker (-fuse-ld=gold) works fine without error or warning.
Using the lld linker (-fuse-ld=lld) works, but gives warnings: 

> ld.lld: warning: found local symbol '__bss_start' in global part of symbol table in \
>                 file /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKitWidgets.so
> ld.lld: warning: found local symbol '_end' in global part of symbol table in file \
>                 /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKitWidgets.so
> ld.lld: warning: found local symbol '_edata' in global part of symbol table in file \
>                 /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKitWidgets.so
> ld.lld: warning: found local symbol '_end' in global part of symbol table in file \
>                 /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKit.so
> ld.lld: warning: found local symbol '__bss_start' in global part of symbol table in \
>                 file /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKit.so
> ld.lld: warning: found local symbol '_edata' in global part of symbol table in file \
> /opt/Qt5.5.1/5.5/gcc_64/lib/libQt5WebKit.so

The error is generated in `elflink.c`:
https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=bfd/elflink.c;h=9d7f69afda52472bfc63b783d60053cecb386452;hb=HEAD#l4494


Since these libraries were working with previous versions of binutils and are
working with either gold and lld, I would expect to be able to link against
them using ld.

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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic