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.

Reply via email to