[Kde-java] GCJ and qtjava/kdejava

Anthony Green green@redhat.com
Sat Mar 30 11:44:00 GMT 2002


On Sat, 2002-03-30 at 06:05, Richard Dale wrote:
> I'm very keen to get this working myself, so I can change the bindings in the 
> cvs to build lib-org-kde-qt.so and lib-org-kde-koala.so by default.

Perfect!

I've copied java@gcc.gnu.org just in case somebody recognizes the
failure you've describe below.  However, in general I would say that the
focus these days is on the coming 3.1 release (in ~2 weeks?).  I believe
there were a number of JNI bugs fixed between 3.0.x and 3.1, and fixes
are unlikely to be rolled back into the 3.0.x tools.  I strongly
recommend downloading, building and installing a 3.1 snapshot.

Thanks,

AG


> I've just built and installed gcc 3.0.4 and binutils-2.12 (on SuSE 6.4 PowerPC 
> Linux). I followed Adam's instructions, and everything builds fine. But I've 
> still got exactly the same problem as I had before with gcc 3.0.2. If I try 
> to run the scribble example, it fails because method overloading doesn't 
> appear to be working properly. In the scribble code this line in 
> ScribbleWindow.java:
> 
>                 _filemenu.insertItem( "&Load", this, SLOT( "slotLoad()" ) );
> 
> Should call this method in QPopupMenu.java:
> 
>         public native int insertItem( String text, QObject receiver, String 
> member);
> 
> Instead this method is called, and the app crashes:
> 
>         public int insertItem( QIconSet icon, String text, QObject receiver, 
> String member, QKeySequence accel) {
>                 return insertItem(icon, text, receiver, member, accel, -1, 
> -1);
>         }
> 
> The literal "&Load" is _not_ a QIconSet..
> 
> (gdb) where
> #0  long long _Jv_JNI_GetField<long long>(_Jv_JNIEnv*, java::lang::Object*, 
> _Jv_Field*) (env=0x100b86d0, obj=0x10039c00, field=0x0)
>     at ../../../gcc-3.0.4/libjava/gcj/field.h:51
> #1  0x0f23bfac in QtSupport::getQt(JNIEnv_*, _jobject*) ()
>    from /opt/kde3/lib/libqtjava.so
> #2  0x0f2836c4 in 
> Java_org_kde_qt_QPopupMenu_insertItem__Lorg_kde_qt_QIconSet_2Ljava_lang_String_2II 
> () from /opt/kde3/lib/libqtjava.so
> #3  0x0f2831f0 in 
> Java_org_kde_qt_QPopupMenu_insertItem__Lorg_kde_qt_QIconSet_2Ljava_lang_String_2Lorg_kde_qt_QObject_2Ljava_lang_String_2 
> ()
>    from /opt/kde3/lib/libqtjava.so
> #4  0x0fdff04c in org.kde.qt.QPopupMenu.insertItem(org.kde.qt.QIconSet, 
> java.lang.String, org.kde.qt.QObject, java.lang.String) (this=0x10051930,
>     icon=0x10039c00, text=0x10069210, receiver=0x1007f2f8, member=0x1)
>     at ./QPopupMenu.java:128
> #5  0x100079f4 in ScribbleWindow.ScribbleWindow() (this=0x10069210)
>     at ScribbleWindow.java:170
> #6  0x100084b0 in ScribbleWindow.main(java.lang.String[]) (args=0x10058ff0)
>     at ScribbleWindow.java:290
> #7  0x0f7cab14 in gnu::gcj::runtime::FirstThread::run() (this=0x1003bf00)
> 
> -- Richard




More information about the Java mailing list