Hello,
after some of our team members set up new virtual machines for
developing, they were unable to build our project. The build fails,
because of a crash in binutils.
Our target system is Debian 7.8 arm64.
The strange thing is that the build still works on my virtual machine
which was an installation of Debian of an earlier version (7.X), but
this system is fully up-to-date and so reports 7.8 as debian version
aswell. For testing, I set up a supposedly identical VM and got the
crash there, too.
Please let me know how I can help resolve this issue. Unfortunately, I
can not provide you with the input objects to the linker.
Rafael Stahl
Recode Systems
=== Details about the crash ===
The minimal invocation command that causes the issue. Two C++ objects
and two static libraries are linked together. If any one of the four
components is removed, the command does not crash. The output contains
file and line of the assert.
rafi@testdeb:~/recode_systems/build/src/gw2/gw2ca$ /usr/bin/c++ -shared
CMakeFiles/PROJECT.dir/src/FILE1.cpp.o
CMakeFiles/PROJECT.dir/src/FILE2.cpp.o -L/home/rafi/REPO/lib
../../../../lib/LIB1.a ../../../../lib/LIB2.a
collect2: error: ld terminated with signal 11 [Segmentation fault]
/usr/bin/ld: BFD (GNU Binutils for Debian) 2.22 assertion fail
../../bfd/elf64-x86-64.c:2454
Info from GDB.
Program received signal SIGSEGV, Segmentation fault.
0x00007f953f964ed3 in ?? () from /usr/lib/libbfd-2.22-system.so
(gdb) bt
#0 0x00007f953f964ed3 in ?? () from /usr/lib/libbfd-2.22-system.so
#1 0x00007f953f954cb6 in bfd_link_hash_traverse () from
/usr/lib/libbfd-2.22-system.so
#2 0x00007f953f96455d in ?? () from /usr/lib/libbfd-2.22-system.so
#3 0x00007f953f9867e2 in bfd_elf_size_dynamic_sections () from
/usr/lib/libbfd-2.22-system.so
#4 0x0000000000421859 in ?? ()
#5 0x0000000000415e5b in ?? ()
#6 0x0000000000405187 in ?? ()
#7 0x00007f953f182ead in __libc_start_main () from
/lib/x86_64-linux-gnu/libc.so.6
#8 0x00000000004056c9 in ?? ()
#9 0x00007fff662f8008 in ?? ()
...
(gdb) i reg
rax 0x18 24
rbx 0x25f63070 636891248
rcx 0x7f953f234780 140278986131328
rdx 0x0 0
rsi 0x0 0
rdi 0x7f953f4ea880 140278988974208
rbp 0x0 0x0
rsp 0x7fff662f7b70 0x7fff662f7b70
r8 0x7f953fe16700 140278998591232
r9 0x7f953fe16700 140278998591232
r10 0x0 0
r11 0x246 582
r12 0x7f953fc09120 140278996439328
r13 0xe6d150 15126864
r14 0x6ccd00 7130368
r15 0x7f953fc09120 140278996439328
rip 0x7f953f964ed3 0x7f953f964ed3
eflags 0x10206 [ PF IF RF ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
=== System information ===
All are identical on both the working and non-working system.
Linux HOSTNAME 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u1 x86_64 GNU/Linux
rafi@testdeb:/usr/lib$ gcc --version
gcc (Debian 4.7.2-5) 4.7.2
rafi@testdeb:/usr/lib$ ld -v
GNU ld (GNU Binutils for Debian) 2.22
rafi@testdeb:/usr/lib$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 60
model name : Intel(R) Core(TM) i5-4670K CPU @ 3.40GHz
stepping : 3
microcode : 0x19
cpu MHz : 3500.117
cache size : 6144 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm
constant_tsc rep_good nopl pni ssse3 lahf_lm
bogomips : 7000.23
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
usr@debian64:/usr/lib$ sha1sum libbfd-2.22-system.so
e7ed84a58bc95e0dc870f4e62e781758d4e508c2 libbfd-2.22-system.so
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils