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.