This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Buildable only?


Hi all,


Rutger> I didn't know that java had a nature.
Andrew> Now you do.

uhh, ohh... In an attempt to restore a better mood for all concerned,
I attach an image I keep on my whiteboard, for all visitors to see...


<no-offence-meant-again>

Sorry for having shortened the thread title somewhat:  The phrase
'buildable only' seems to summarize my personal year-long experiments 
with free-Java pretty well. I am well aware of the hard work of
the gcc/gcj, kaffe, and classpath developers, but I have to admit
that despite of all the hard work, I cannot even run the simplest
of my own applications. (However, I do can *compile* them now).

</no-offence-meant-again>



Andrew> Is it really?  There are users out there insane enough to be passing
Andrew> around precompiled binaries of small utils?

Mark> Where/How do these actual users communicate about the problems they are
Mark> experiencing and the disconnect between us developers and them? I would
Mark> like to better understand the actual problems these users see that we
Mark> developers might be missing.

OK, here is one users opinion: I don't really care about Jonas&Co,
and I am happy to run Eclipse under JDK 1.4.2 and J2SE 5.0, but
I *do* care about AWT/Swing, because I *do* like user interfaces
even for my small utils.

(Also, I *would* like to help with AWT, but unfortunately I did once look 
at the source code of java.awt.Panel during the 1.0.2 era, which means
that I am 'tainted' now.)

---

Several of the original 'hype-this-new-trend' newspaper articles back
in 1995/1996 stated that the first version of AWT was written in about
six weeks by Sun staff, just before the original Java release. Given 
the quality of AWT, I tended to believe these articles. 

Then something happened... or rather didn't happen:
Gnu/gcj/classpath AWT is about six years now, and nowhere ready to run
applications that I *could* run on AWT 1.1 (even AWT 1.0.2) reliably on 
both Solaris and Windows'95.

During the last days, I *did* download the latest snapshots of gcc/gcj
and classpath-0.15, and I *have* all dependecies including cairo-0.3.0
etc...  However, even with the latest fixes in, showing a simple frame
has broken insets in GTK, and drawing Images is now broken in both the
pure-AWT-Graphics and the fancy-cairo-shouldbe-Graphics2D stuff. Popup-
menus appear at random positions in random sizes. Using a JTree compiles, 
but most of the functions are dead.

Regarding keyboard input on Swing components (a.k.a. "accelerators"),
I have recently been told (after a detailed bug report) that this was 
difficult to implement and I shouldn't wait for it.

---

Some experiments with my 'default' benchmarks (including the image viewer, 
sources posted to this list recently, and jfig):

Building jamvm is pure fun and only takes seconds, but starting jfig
takes 5 minutes on my Athlon 2600+: the no-JIT, interpreter-only effect.
Not surprisingly, the apps shows the known AWT bugs and is unusable.

Kaffe starts up somewhat faster, but the GUI is unusable because the
latest mouse-button fixes are not in the 1.1.5 release. It feels slower
than JDK-1.1 on a Pentium-90. Unusable.

Using JikesRVM might be somewhat faster, but their installer insists on
Classpath-0.14 and won't work with 0.15. The automatic download of 0.14
starts, but then breaks down. Any ideas?

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. Installing gdb-6.3 does not help, because I am told that I need 
the CVS version of gdb. Which won't install.

Just for Comparison: 

JDK 1.4.2/Blackdown: installs and runs all my testcases fine.
JDK 1.4.2/Sun: is pre-installed and runs all my testcases fine.
JDK 1.4.1/IBM: installs and runs all my testcases fine.
JDK 5.0/Sun: installs and runs all my testcases fine.
JDK 1.1.8/Sun/swing-1.1.1: some bugs and NPEs, but usable.
Jview 1.1.4/MS/Win'95/swing-1.1.1: some bugs, but surprisingly usable.

Note: None of these commercial JVMs required me to update a single 
system library. (If they did, they did update the system automagically,
and they didn't break anything).

Note: all of this is on a system that I spent *hours* to install the 
several things that current gcj depends on. Deploying on client's machines 
in this state of affairs is simply impossible, allthough I guess that
static builds might help somewhat. 

---

Summary:

I would *love* to be able to be insane enough to be passing around
precompiled gcj binaries. I *have* waited about six years now for that
to be possible.

But it isn't. Not yet.

- Norman

Attachment: biohazard.png
Description: biohazard.png


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]