Red Hat Bugzilla – Bug 119661
gcc aborts when linking with libjvm.so
Last modified: 2007-11-30 17:10:39 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (compatible; Konqueror/3.2; Linux) (KHTML, like Gecko)
Description of problem:
gcc aborts prematurely when linking with libjvm.so
Version-Release number of selected component (if applicable):
gcc version 3.3.3 20040311 (Red Hat Linux 3.3.3-3)
Steps to Reproduce:
Create a minimal c program named abc.c, for example
Build the program, linking with libjvm.so (allthough not needed), using the command
gcc -L/j2sdk1.4.2_04/jre/lib/i386/server -o abc abc.c -ljvm
Actual Results: collect2: ld terminated with signal 11 [Segmentation fault]
Expected Results: gcc should have produced executable abc and printed no messages.
Redhat 9 does not exhibit this problem. Still, maybe the problem instead is with libjvm.so.
It is apparently the linker, not gcc that segfaults.
What exact version ofbinutils do you have?
rpm -qa | grep binutils
GNU ld version 18.104.22.168.1.1 20040326
As workaround I downgraded from binutils-22.214.171.124.1.1-2 to
binutils-126.96.36.199.8-8.1. After that ld as invoked by gcc complained
that "-as--needed" is unrecognized. This appears to be a new option
passed from gcc to ld. I did not downgrade gcc but left it at
gcc-3.3.3-6. Instead I edited out "-as--needed" and "--no-as-needed"
in /usr/lib/gcc-lib/i386-redhat-linux/3.3.3/specs. Don't know if
that's valid. But with this the problem appears to have vanished.
I don't see this problem in binutils-188.8.131.52.3-5 (FC2).