This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: Some observations on developing with gcj
- From: Tom Tromey <tromey at redhat dot com>
- To: Mark Wielaard <mark at klomp dot org>
- Cc: java at gcc dot gnu dot org
- Date: 29 Jun 2003 23:18:04 -0600
- Subject: Re: Some observations on developing with gcj
- References: <1056910537.4815.45.camel@elsschot>
- Reply-to: tromey at redhat dot com
>>>>> "Mark" == Mark Wielaard <mark@klomp.org> writes:
Mark> When closing the program down I wanted to use shutdown
Mark> hooks. But they only really work when the program terminates
Mark> cleanly. It would be nice if shutdown hooks were also triggered
Mark> when the program receives a fatal signal (such as the user
Mark> pressing Control-C).
Does the JDK do that? This is worthy of a bug report.
Mark> java-gnome <http://java-gnome.sourceforge.net/> was surprisingly
Mark> usable. The main drawback is that it currently is only available
Mark> as jar files with jni libraries in Debian which means that you
Mark> will have to use gij at the moment.
It should be possible to just run "gcj -fjni" on the .jar file. Well,
with gcj 3.3 this may not work perfectly, since the patch to compile
property files isn't in that release. It might only take you a few
minutes to try it out...
Mark> When debugging your native program it is really unhelpful that
Mark> NullPointerExceptions don't point at where the actual exception
Mark> occured but at the calling method.
Please file in bugzilla.
Mark> When using the interpreter Kaffe is nicer since it gives line
Mark> numbers.
Try compiling with -g. Or do you mean that gij doesn't give line
numbers? That should go in bugzilla -- right now I think we drop this
information, but we could easily keep it around.
Mark> And using gdb with gij gives not that nice backtraces since you
Mark> can only see the interpreter frames.
Yeah. Coincidentally I talked to Andrew Cagney about this problem
last week. As it turns out, gdb has a lot of the infrastructure to
make it possible. We just need somebody to actually work on it. I
doubt it is very easy; it probably requires a gdb expert, plus some
additions to libgcj to make it possible for gdb to extract all the
information it needs.
Mark> [ binary compatibility ]
Mark> The two main problems that users have are PAM and iconv
Mark> (libraryy) loading which crashes the binary.
I think these are glibc problems. At least I don't see what we could
do about it.
Longer term we want to push out the "new ABI" work, which will largely
insulate gcj users from library changes.
Mark> One thing that I didn't really tackle yet is creating a clean GNU
Mark> configure/make install with all the nice standard make targets. I
Mark> found automake a bit confusing and it didn't seem to handle the simple
Mark> application case and seems to insist on creating.
Send me private email with what you tried, and I'll take a look at it.
Maybe one or more automake bug reports are needed. The java support
in automake is still pretty new.
Mark> Something that I learned from working on this project is that it is
Mark> really nice to have a irc channel to directly discuss some issues with
Mark> interested people. We should really consider setting up a gnu-java
Mark> channel on freenode. Are people interested in this?
Sure. Like Jeff, lately I've been on #gcc on OFTC. Anthony once
tried to start a #gcj, but I don't think many people showed up.
Anyway, tell me the channel and I'll be there. We could also mention
it on our web page.
Tom