ElectricalFire can be built under x86 Linux or FreeBSD.
- C++ compiler (egcs 1.0.3, the compiler that ships with RedHat5.2, is known to work. Other compilers might work. Please write and let us know which other compilers you've had success with.)
- Perl installed. It is available in most unix distributions.
- JDK 1.2 classes from Sun. (JDK 1.1.* will probably work, but has not been tested.) Editor: We hope that it will someday be possible to use the Classpath open-source Java runtime library replacement instead of the JDK.
- If you will be debugging ElectricalFire, you will need a thread-aware debugger, such as gdb 4.17 or later.
Download the code using CVS:
cvs co mozilla/ef
cvs co mozilla/nsprpub
Download Sun's JDK1.2 and unpack it. (You will need a Solaris or Windows machine to unpack the distribution, but the only files required is the platform-independent rt.jarfile.) Set your CLASSPATH environment variable to point to the JDK's rt.jar file. For example,
setenv CLASSPATH ~user/jdk1.2/jre/lib/rt.jar
Set your library search path to point to the NSPR library. (You might want to build the library first as outlined in the "Build ElectricalFire" section below, so as to be sure you use the correct path.)
setenv LD_LIBRARY_PATH /mozilla/dist/Linux_All_DBG.OBJ/bin
cd mozilla/nsprpub; gmake; cd ../..
cd mozilla/ef; gmake cd Packages; gmakeEditor: This second gmake invocation in the Packages directory is temporary until I can fix the damn build rules.
The build process above creates an executable named
sajava, located under themozilla/ef/dist/directory. (The exact path depends on which platform you are building for. For example, it might bemozilla/ef/dist/Linux_x86_DBG.OBJ/bin/sajava.)sajavaacts as a command-line replacement for the JDKjavacommand. Before usingsajava, ensure that your environment variables are set up correctly:
CLASSPATHshould remain set as above, unless you want to add additional directories/jars in which to search for classes.LD_LIBRARY_PATHshould point to the directory containing ElectricalFire's libEF.so and also to the NSPR installation directory. The exact path will vary depending on the platform you are building on. For example:
setenv LD_LIBRARY_PATH /mozilla/ef/dist/Linux_x86_DBG.OBJ/lib:/mozilla/dist/Linux_All_DBG.OBJ/bin