"libjawt.so" not loaded by Java 7
Kapta Ulo
ulo_kapta at hotmail.com
Sat Aug 6 06:55:10 PDT 2011
Thanks for clearing that up, much appreciated.
It seems that LWJGL was relying on java.awt.Toolkit.getDefaultToolkit(); to load libjawt.so, which had worked fine but is no longer the behaviour with Java 7.
The fix/solution to the problem was to just manually load libjawt.so using System.loadLibrary("jawt");
Thanks
Kapta
> Date: Wed, 3 Aug 2011 06:37:37 +0100
> From: ahughes at redhat.com
> To: ulo_kapta at hotmail.com
> CC: jdk7-dev at openjdk.java.net
> Subject: Re: "libjawt.so" not loaded by Java 7
>
> On 09:45 Tue 02 Aug , Kapta Ulo wrote:
> >
> > Hi,
> > The Java 7 release seems to have broken the LWJGL project on Linux, it no longer works and complains that "libjawt.so" is not loaded. The project has been calling the following method: java.awt.Toolkit.getDefaultToolkit(); to ensure that this native file is loaded, this has worked fine for the last 6 or so years. There seems to have been some internal change which causes this to break. Any idea's on what it could be and how to fix this?
> > There is some more information on the LWJGL forum here http://lwjgl.org/forum/index.php/topic,4085.0.html
> > Some people have found a workaround using "sudo ldconfig /opt/java/jre/lib/amd64/" which they claim allows it to work as before, but doesn't really explain why its failing, any idea's or pointers would be appreciated.
>
> If adding the library on the system library path is fixing it, it could be related to:
>
> 6367077: Purge LD_LIBRARY_PATH usage from the launcher
> http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/de45eac5670e
>
> 'Previously the launcher modified the LD_LIBRARY_PATH appropriately for the
> desired data model path, regardless if data models matched or not. The
> launcher subsequently exec'ed the desired executable, in order to make the
> LD_LIBRARY_PATH path available for the runtime linker. This is no longer the
> case, the launcher dlopens the target libjvm.so. All other required
> libraries are loaded by the runtime linker, by virtue of the $ORIGIN paths
> baked into the shared libraries, by the build infrastructure at compile time.'
>
> Have you only seen this with LWJGL i.e. can other Java applications find libjawt.so?
>
> > Thanks
> > Kapta
>
> --
> Andrew :)
>
> Free Java Software Engineer
> Red Hat, Inc. (http://www.redhat.com)
>
> Support Free Java!
> Contribute to GNU Classpath and IcedTea
> http://www.gnu.org/software/classpath
> http://icedtea.classpath.org
> PGP Key: F5862A37 (https://keys.indymedia.org/)
> Fingerprint = EA30 D855 D50F 90CD F54D 0698 0713 C3ED F586 2A37
More information about the jdk7-dev
mailing list