kaffe and java-gnome (Was: [kaffe] System.loadLibrary() should look in /lib and /usr/lib)

Mark Wielaard mark@klomp.org
Fri Jul 4 05:31:02 2003


Hi,

On Sun, 2003-06-22 at 15:49, Mark Wielaard wrote:
> On Sun, 2003-06-22 at 14:13, Mark Wielaard wrote:
> > And indeed adding /usr/lib (where the library is installed) to
> > LD_LIBRARY_PATH seems to work, but it would be more convenient if kaffe
> > would automatically load standard libraries (from /lib and /usr/lib).

Note that the latest debian packages store the JNI libraries in
/usr/lib/jni.

> Work is a big word. I am trying to get my application that uses the
> java-gnome libraries working with kaffe (it works with gij) but it
> crashes in spectacular ways. Has someone successfully used java-gnome
> with kaffe?

I played a bit more with it. And as long as I don't use glib timer
callbacks I can play a bit with some windows and widgets.

One of the problem with glib Timer support is that kaffe doesn't
implement JNI_OnLoad() which java-gnome uses to store a pointer to the
JavaVM for use in its own callback funtions.

But even if I work around this I don't get that far when enabling the
glib timer. Often kaffe will say that all threads are deadlocked. This
seems to come from the fact that native method GtkMain() never returns.

Dumping live threads:
`gc' tid 0x825900c, status SUSPENDED flags DONTSTOP
 blocked@0x82388cc (0x825900c->|)
`finaliser' tid 0x825000c, status SUSPENDED flags DONTSTOP
 blocked@0x8238884 (0x825000c->|)
`main' tid 0x8119028, status SUSPENDED flags NOSTACKALLOC DONTSTOP
 blocked@0x819a9bc (0x8119028->|)
Deadlock: all threads blocked on internal events
./snark-gnome.sh: line 9: 23839 Aborted                 ${JAVA} -verifyremote -classpath ${CLASSPATH} ${MAINCLASS} $*

Cheers,

Mark