Stallman lamenting that GCJ and ClassPath are still (read: eternally) catching up ...

Christopher Marshall
Tue Apr 13 16:07:00 GMT 2004

--- Erik Poupaert <> wrote:
> The "Java Trap" is otherwise an interesting read:
> He's lamenting about "GCJ and ClassPath still catching up".
> GCJ eternally catching up is otherwise a self-inflicted condition. I mean, we all
> know very well that it never pays to play copycat. There's no way to be *and*
> compatible with Sun *and* to let things drift there where the users want to take them
> -- and that's eventually the only strategy that guarantees success.
> Let's recap the GCJ successes from 1998 till this very day? None. What will be the
> GCJ successes in 2007? None again. It doesn't take a degree in advanced econometrics
> to see this coming.
> It all just sounds as if there were no niches -- at all -- in which GCJ could be
> successful and start building strength. Of course there are.

I read Stallman's piece as well.  I thought he made good points.  His main one seemed to be that
if you are writing code in java and you were thinking of using the blackdown JDK, you might want
to start experimenting with gcj, because there are incompatibilites between the two, and you have
more freedom to redistribute your app if it can be built with gcj.

I guess what you are saying is that he was painting a picture of gcj as struggling, and saying
that people should start fixing their applications to work with gcj because it would help the
struggle.  In other words, Stallman phrased it as a plea for help.  A better point to make would
be to say,"gcj is a very powerful java compiler that is a good deal more flexible than Sun's JAVA
in that it can compile all the way to a native executable on many architectures.  And you are free
to redistribute your application without restriction (unlike with Sun).  And the mailing list
supporting gcj is amazingly responsive.  If discover a problem and write a small program to
demonstrate it, you have a good chance of the developers fixing the problem in weeks."  That would
come across not as a plea for help, but as a show of strength.  Hey guys!  Just *look* at what you
are missing!  Get in on the game while you still have a chance (before your app is so dependent on
Sun's JDK that you can't afford to turn back)!

Back to Stallman's lock-in point, I am an example of that.

I have been porting my stuff to gcj and one of the main reasons was I wanted to be able to
redistribute it not be shackled by Sun.  I hit a very specific performance problem with gcj (in
the BufferedReader.readline() function), wrote a small program to demonstrate it and posted it on
the list.  Within a month, the developers on the list had fixed the issue (this all happened back
in 2003-11 and 2003-12 if anyone wants to look over the list archives).

I think one thing stopping many people from using gcj is lack of a good Makefile template to
duplicate the effect of the blackdown JDK's 'javac *.java' command.  I had to experiment for a
*while* to get a Makefile I could use that gave me the same flexibility as blackdown's javac

I am acutally rather proud of my Makefile (it is a combination of a Makefile and some bash
scripts).  I'd be happy to post it or perhaps write it up if anyone was interested.

Chris Marshall

Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway

More information about the Java mailing list