1 |
Installing GNU Classpath - June 28, 2000 |
Installing GNU Classpath - Nov. 03, 2001 |
2 |
|
|
3 |
First, this is a development release only! Unless you are interested in |
First, this is a development release only! Unless you are interested in |
4 |
active development and debugging, or just like running random alpha code, |
active development and debugging, or just like running random alpha code, |
5 |
this release is probably not for you. |
this release is probably not for you. |
6 |
|
|
7 |
------------------------------------------------------------------ |
------------------------------------------------------------------ |
8 |
Required Software |
Suggested Software |
9 |
------------------------------------------------------------------ |
------------------------------------------------------------------ |
10 |
- GNU autoconf 2.13 |
For any build environment involving native libraries, these |
11 |
- GNU automake 1.4 |
new versions of autoconf, automake, and libtool are required. |
12 |
- GNU libtool 1.3.3 |
|
13 |
- GTK+ 1.2.x |
- GNU autoconf 2.52 |
14 |
- IBM jikes 1.11 + patch (see www.classpath.org website) |
- GNU automake 1.5 |
15 |
- libart_lgpl 2.1.0 |
- GNU libtool 1.4.2 |
16 |
- gdk-pixbuf (latest from gnome.org CVS) |
|
17 |
- Sun's 1.1.x javah (1.2.x and 1.3.x will not work) |
For building the Java bytecode (.class files) |
18 |
|
|
19 |
Before installing, note that only Japhar 1.20 or later is supported. |
- IBM jikes 1.13 (newer versions up to 1.15 appear to be broken) |
20 |
You will need to download that from http://www.japhar.org/ in order to |
or GCJ 3.0.2+. The kjc compiler is supported with configure |
21 |
use GNU Classpath. Japhar should be configured with --with-nspr, |
but we have been unable to successfully compiled with it. |
22 |
--enable-shared, --enable-debugging, and --enable-logging. |
|
23 |
|
For building the JNI native libraries, the following are required. |
24 |
|
|
25 |
|
- gcjh from GCJ 2.96+, others can be specified using |
26 |
|
--with-javah=<program> as an argument to configure but have |
27 |
|
not been tested and may not work |
28 |
|
- GTK+ 1.2.x |
29 |
|
- libart_lgpl 2.1.0 |
30 |
|
- gdk-pixbuf (Only needed if you want to compile the native library) |
31 |
|
|
32 |
This package was designed to use the GNU standard for configuration |
This package was designed to use the GNU standard for configuration |
33 |
and makefiles. To build and install do the following: |
and makefiles. To build and install do the following: |
35 |
1). Run the "configure" script to configure the package. There are |
1). Run the "configure" script to configure the package. There are |
36 |
various options you might want to pass to configure to control how the |
various options you might want to pass to configure to control how the |
37 |
package is built. Consider the following options, "configure --help" |
package is built. Consider the following options, "configure --help" |
38 |
gives a complete list. Kaffe is not supported yet! |
gives a complete list. |
39 |
|
|
40 |
--with-japhar configure GNU Classpath for Japhar [default=yes] |
--enable-java compile Java source default=yes |
41 |
|
--enable-jni compile JNI source default=no |
42 |
--with-jikes compile classes with jikes [default=no] |
--enable-cni compile CNI source default=no |
43 |
--with-kjc compile classes with kjc [default=no] |
--enable-load-library enable to use JNI native methods default=yes |
44 |
--with-classlib specify path to a classes.zip like file |
(disabled automatically using --enable-cni) |
|
--with-javah specify path to a javah-like program |
|
45 |
|
|
46 |
2). Type "make" to build the package. There is no longer a |
2). Type "make" to build the package. There is no longer a |
47 |
dependency problem and we aim to keep it that way. |
dependency problem and we aim to keep it that way. |
49 |
3). Type "make install" to install everything. This may require |
3). Type "make install" to install everything. This may require |
50 |
being the superuser. |
being the superuser. |
51 |
|
|
52 |
Report bugs to classpath@gnu.org. |
Report bugs to classpath@gnu.org or much better via Savannah at this |
53 |
|
URL: http://savannah.gnu.org/support/?func=addsupport&group_id=85 |
54 |
|
|
55 |
Happy Hacking! |
Happy Hacking! |
56 |
|
|
57 |
|
Once installed, GNU Classpath is ready to be used by any VM that supports |
58 |
------------------------------------------------------------------ |
using the official version of GNU Classpath. Simply ensure that |
59 |
Japhar |
/usr/local/classpath/share/classpath is in your $CLASSPATH environment |
60 |
------------------------------------------------------------------ |
variable. You'll also have to set your LD_LIBRARY_PATH |
61 |
The libraries are installed to a subdirectory of Japhar's lib |
variable (or similar system configuration) to include the Classpath |
62 |
directory called "classpath." The compiled classes are installed to a |
native libraries in /usr/local/classpath/lib/classpath. |
63 |
subdirectory of Japhar's share directory called "classpath." |
|
64 |
|
*NOTE* All example paths assume the default prefix is used with configure. |
65 |
Once installed, GNU Classpath is ready to be used. Simply ensure that |
If you don't know what this means then the examples are correct. |
66 |
/usr/local/japhar/share/classpath is in your $CLASSPATH environment |
|
67 |
variable. (Change that of course if your Japhar is not installed in |
LD_LIBRARY_PATH=/usr/local/classpath/lib/classpath |
68 |
/usr/local/japhar). You'll also have to set your LD_LIBRARY_PATH |
CLASSPATH=/usr/local/classpath/share/classpath:. |
69 |
variable (or similar system configuration) to include the nspr lib |
export LD_LIBRARY_PATH CLASSPATH |
|
directory and the classpath subdirectory of Japhar's lib directory. |
|
|
|
|
|
Ok, here is a configuration, build, install, and test example. This |
|
|
may or may not be appropriate for your system. |
|
|
|
|
|
./configure --with-japhar --with-jikes --with-classlib=/usr/local/java/lib/classes.zip --with-javah=/usr/local/java/bin/javah |
|
|
make |
|
|
make install |
|
|
export LD_LIBRARY_PATH=/usr/local/nspr/lib:/usr/local/japhar/lib/classpath:/usr/local/japhar/lib |
|
|
export CLASSPATH=/usr/local/japhar/share/classpath:. |
|
|
japhar --classpath /usr/local/japhar/share/:. FooClass |
|
70 |
|
|
71 |
------------------------------------------------------------------ |
------------------------------------------------------------------ |
72 |
Misc. Notes |
Misc. Notes |
73 |
------------------------------------------------------------------ |
------------------------------------------------------------------ |
74 |
Use of Sun's compiler is deprecated and probably does not work. At |
Use of Sun's compiler is deprecated and probably does not work. At |
75 |
least two free compilers are supported, jikes and kjc. |
least three free compilers are supported: gcj, jikes, and kjc. |
76 |
|
|
77 |
|
Recompilation may cause a lot of unneeded compilation. This has to |
78 |
|
do with how the compiler handles dependency tracking. For our part, |
79 |
|
we avoid placing make style dependencies as rules upon the compilation |
80 |
|
of a particular class file and leave this up to the Java compiler instead. |
81 |
|
|
82 |
The --with-classlib argument expects a CLASSPATH env. style |
The --enable-maintainer-mode option to configure currently does very |
83 |
sub-argument specifying one or more files or directories separated by |
little and shouldn't be used by ordinary develoeprs or users anyway. |
|
this platform's path separator character. |
|
|
|
|
|
Recompilation may cause a lot of unneeded compilation. This always |
|
|
needs fixing. |
|
|
|
|
|
The --enable-developer-mode and --enable-maintainer-mode options to |
|
|
configure currently do nothing. At some point these will again affect |
|
|
recompilation of the Java classes in the distributed package. Until |
|
|
then, ignore them. |
|