java-gnome and gcj
Olivier
olivier@zipworld.com.au
Sun Jul 15 03:40:00 GMT 2001
Hi,
I have been trying to get java-gnome to work with gcj.
Java-GNOME ( http://java-gnome.sourceforge.net ) is a set of Java
bindings for GNOME and GTK libraries. It is implemented as a JNI layer.
I have managed to compile the First example from their tutorial with
gcj but runing it fails with the following message:
tournesol:~/program/java/gnome/gcj$ ./First
Gtk-CRITICAL **: file gtkwindow.c: line 438 (gtk_window_set_focus): assertion `GTK_IS_WIDGET (focus)' failed.
Obviously, it's not very helpful! Before I go any further I would like
to check the steps I did to compile java-gnome and this example. Maybe
I have done a beginers mistake. If you think everything is ok I'll try to
debug the example and figure out what's breaking.
Thank you very much.
Following are the steps I've done:
- Step 1
compiled java-gnome out of the box with jdk1.3 and gcc2.95.4
got gnome.jar and gtk.jar (the java wrappers)
and libGNOMEJava.so, libGTKJava.so (the native methods).
I have tested various examples with jdk1.3, it is all working.
- Step 2
recompiled all the java wrappers (packages gnu.gtk, gnu.gdk,
and gnu.gnome) with gcj as follow:
for fjava in `find . -name '*.java'`; do
fo=${fjava/.java/.o}
gcj -fPIC -fjni --classpath=$CLASSPATH -o $fo -c $fjava
done
objects=`find . -name '*.o'`
gcj -shared $objects -o gnu.so
which gave me 'gnu.so' lib.
- Step 3
Recompiled First.java example as follow:
LIBGCJ_JAR=/usr/local/gcc/share/libgcj.jar
GTK_JAR=~/tmp/java-gnome-0.6.0/lib/gtk.jar
GNOME_JAR=~/tmp/java-gnome-0.6.0/lib/gnome.jar
gcj -fPIC --classpath=$LIBGCJ_JAR:$GTK_JAR:$GNOME_JAR -o tutorial/First.o -c tutorial/First.java
gcj -o First --main=First tutorial/First.o gnu.so
- Step 4
ran the example:
#set LD path to contain gnu.so, libGNOMEJava.so and libGTKJava.so
export LD_LIBRARY_PATH=/usr/local/gcc/lib:~/tmp/java-gnome-0.6.0/lib:.
./First
which output:
Gtk-CRITICAL **: file gtkwindow.c: line 438 (gtk_window_set_focus): assertion `GTK_IS_WIDGET (focus)' failed.
and does not display anything.
Thanks.
Olivier
--
----------------------------------------------------------------------
Olivier Louchart-Fletcher
Email: olivier@zipworld.com.au
More information about the Java
mailing list