https://sourceware.org/bugzilla/show_bug.cgi?id=26980
Bug ID: 26980
Summary: Report "version node not found for symbol" for an
executable
Product: binutils
Version: unspecified
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: i at maskray dot me
Target Milestone: ---
cat > ./def1.s <<eof
.globl foo
.symver foo, foo@@@v1
foo:
eof
gcc -c def1.s
gcc -shared -fpic -xc /dev/null -o b.so
The `version node not found for symbol` error is reported for a shared object,
but not for an executable.
% ld.bfd -shared def1.o
ld.bfd: a.out: version node not found for symbol foo@@v1
ld.bfd: failed to set dynamic section sizes: bad value
% ld.bfd -E def1.o b.so && readelf -W --dyn-syms a.out
ld.bfd: warning: cannot find entry symbol _start; defaulting to
0000000000401000
Symbol table '.dynsym' contains 6 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000402000 0 NOTYPE GLOBAL DEFAULT 9 _edata
2: 0000000000402000 0 NOTYPE GLOBAL DEFAULT 9 _end
3: 0000000000401000 0 NOTYPE GLOBAL DEFAULT 8 foo@@v1
4: 0000000000000000 0 OBJECT GLOBAL DEFAULT ABS v1
5: 0000000000402000 0 NOTYPE GLOBAL DEFAULT 9 __bss_start
--
You are receiving this mail because:
You are on the CC list for the bug.