Buildable only?
Norman Hendrich
hendrich@informatik.uni-hamburg.de
Fri May 6 20:51:00 GMT 2005
Hello Andrew, hello Bryce,
>> GCJ now compiles all of my classes, but running them leads to segfaults.
>> The apps simply crash somewhere in GTK or libpthread; no stacktraces,
>> no fun.
>> What are you running on?
For details see my bug reports around 09.Feb.2005 (AWT/19838..19862).
Back then I tried several gcc-4.0.0 snapshots, the latest I really
tortured now is gcc-4.1-20050424.
All of this on my SuSE 8.2 and 9.1 systems. I guess that the actual
crashes are due to GTK/libpthread problems, not due to gcc/gcj itself.
Here is what Tom (Fitzsimmons) wrote me back then:
>> Is there *ANY* way to debug complex, multithreaded GTK+ applications
>> on Linux?
>> Well, it's pretty difficult, which is part of the reason these things
> take so long to fix :( There are some tricks you should know about
> though:
>> In GtkToolkit.gtkInit, call:
> XSynchronize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), 1);
> There's also DEBUG_LOCKING in gtkpeer.h. Enable it to see where the gdk
> critical section is entered and exited. This one's good for debugging
> deadlocks in the peers.
>> Another useful debugging tool is xwininfo, coupled with calls to
> GDK_WINDOW_XID in your GTK code. xwininfo will tell you information
> about a window that you click on. See also the -tree option which dumps
> a window's hierarchy. It's very handy.
Seems that I am not the only one who has problems with GTK...
---
However, my point today is that even *without* the annyoing-and-hard-
to-debug-actual-crashes, *none* of my (rather simple) AWT/Swing-based
apps would be usable with gcc/gcj.
>From my point of view, it is very hard to understand that you keep
adding fancy compiler options (like gcj-dbtool or gcjx), while even
pretty simple applications don't work at all - as soon as they use
AWT or Swing. I admit that most of the java.lang, java.math, java.io,
java.net, and java.util stuff is pretty good already, and from what
I've heard some of the javax.* things are good, too.
---
Just out of curiousity: during the Cygnus times, gcj seemed just like
a small and fun project to me. But now that Redhat is quite a big player,
and gcj the biggest partof gcc (using either LOC or build-time as a metric),
isn't there any way that Redhat can spend some of the IPO money on
a few man-months of full-time AWT/Swing development?
- Norman
More information about the Java
mailing list