- What is libswt?
- libswt is just the SWT from the Eclipse project, repackaged so that it can be easily built into a native "so" on Linux (and possibly other OS's which can build GTK and GCJ).
- Yeah, OK, but then what's the SWT?
- SWT stands for Standard Widget Toolkit. The Eclipse project built this graphical toolkit because they didn't want to use Swing, which is Sun's solution for GUI Java code. Eclipse has a very different approach and philosophy from Swing, and the debate between them takes on religious tones at times. If this is interesting to you, by all means read more at the Eclipse Project, or at Sun's Java Homepage.
- What is Eclipse?
- Eclipse is a big project of which the SWT is just a small part. Eclipse is most famous as a free IDE for Java, but there is more to it than that. For more information check out the Eclipse website.
- Why would I want to use libswt?
- Well, if you are like me, you think Java is a cool language, but you have always been a little bit put-off by the issues surrounding a Java runtime. That is, how can you make sure your users have one, and what are the licensing issues surrounding distributing one and so on. Or maybe you would just like to have a Sun-free Java because you don't like Sun for some reason. Or it could be that you just like the typical source distribution model where people download and extract the tarball then type "./configure", "make", and "make install".
- What type of graphical environment is supported by libswt?
- Currently, libswt supports the GTK/Gnome environment. It should be fairly straightforward to support Motif, also, since the Eclipse project supports Motif. The principle barrier to released Motif support is robust autoconf code for detecting Motif. If you can help with this, by the way, please volunteer!
- What dependencies does libswt have?
- The current GTK/Gnome version requires Gnome, GTK2, zip, and pkg-config. Of course, you have to have a working installation of GCC and GCJ, the GNU compiler for Java, too. When the Motif version is released, it will require pkg-config and the Motif widgets.
- Where did the idea for libswt come from?
- Orignally the idea came from an article by Kirk Vogen at IBM's developerWorks. Kirk later wrote a followup article which is more up to date.
- What license is used by libswt?
Well, there are really two parts to libswt: The support library, and the SWT proper. Both parts are written by the Eclipse folks. The support library source code (which is C) is distributed under the LGPL, and the SWT itself is under the CPL. The Eclipse people normally distribute the support libraries in binary form, by the way. (libswt is an all-source project)
The example application is really just there to show how to use autoconf macros to detect a libswt installation and extract the correct compile and link flags using pkg-config. (If you have licensing issues with the sample application, email the libswt project admin.)