This is the mail archive of the
mailing list for the glibc project.
Re: binary incompatible libc.so change breaks Sun Java
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Bruno Haible <bruno at clisp dot org>
- Cc: libc-alpha at sources dot redhat dot com
- Date: Fri, 19 Apr 2002 15:54:17 +0200
- Subject: Re: binary incompatible libc.so change breaks Sun Java
- References: <firstname.lastname@example.org>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Fri, Apr 19, 2002 at 02:27:30PM +0200, Bruno Haible wrote:
> Attempting to use the Sun JDK 1.3.1 with the current glibc, I get the
> following error:
> Error occurred during initialization of VM
> Unable to load native library: /usr/lib/SunJava2-1.3.1/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference
> This is one more binary incompatible change in libc.so.
Nope. __libc_wait (nor __libc_waitpid) was never meant as an exported
interface from glibc, the fact that Sun JDK used to be abusing it makes it
no different. Check the list of Sun proposed GLIBC_PRIVATE symbols, they
included there far more than were actually changed. __libc_wait and
__libc_waitpid were among them.
It is not exported in any header, nor is documented anywhere.
Ulrich has notified Sun AFAIK and they have changed it in latest JDK.
The whole idea behind GLIBC_PRIVATE is to codify what is and what is not
(and never has been) a supported interface by glibc.