Comment 10 for bug 1548434

Revision history for this message
Andrew Haley (therealaph) wrote :

There's nothing we can do upstream because package managers strip out all of the debug information. It requires

If installing the correct debuginfo package doesn't work, there is a problem finding the debuginfo packages. libjvm will read the .note.gnu.build-id section in libjvm.so, and then look for a corresponding file in /usr/lib/debug.

Like this:

 $ readelf -x .note.gnu.build-id "/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131.x86_64/jre/lib/amd64/server/libjvm.so"

Hex dump of section '.note.gnu.build-id':
  0x00000190 04000000 14000000 03000000 474e5500 ............GNU.
  0x000001a0 14501d56 be269cfd 9234342b 58407e0f .P.V.&...44+X@~.
  0x000001b0 bbe4f5c8 ....

And the debuginfo should be found here:

/usr/lib/debug/.build-id/14/501d56be269cfd9234342b58407e0fbbe4f5c8.debug

Note that the filename of the debuginfo is the hex representation of the hex data in the .note.gnu.build-id section of libjvm.so.

It would be possible for the distros to avoid this by not stripping out the symbols we need, but most distro packaging has an "all or nothing" approach to debuginfo.