This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: Buildable only?
- From: Norman Hendrich <hendrich at informatik dot uni-hamburg dot de>
- To: java at gcc dot gnu dot org
- Date: Fri, 6 May 2005 22:18:00 +0200 (CEST)
- Subject: Re: Buildable only?
- Reply-to: Norman Hendrich <hendrich at informatik dot uni-hamburg dot de>
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