Requirements ============ OpenAxiom currenly requires a Lisp system for its runtime support. OpenAxiom is known to build with the GNU Common Lisp (GCL versions 2.6.7 or 2.6.8), Steel Bank Common Lisp (SBCL version 1.0.22 or higher), CLisp (version 2.44.x or higher), and ECL (version 0.9l or higher). So, if you already have any of the above mentioned Lisp systems, your are good to go. Otherwise, you would need to download a dependency tarball from OpenAxiom's download web site. See instructions below. OpenAxiom needs `noweb' for extracting its source codes. If you don't have running `noweb' utilities, you would need to either download the dependency tarball from OpenAxiom's download web site, or separately install them, and then proceed with configuration as detailed below. Note that GCL or SBCL or CLisp, and `noweb' are needed only to build OpenAxiom. They are not needed once the system is installed. Finally, you would need a working GNU C compiler. It is also recommended that you install X11 development headers and libraries, especially Xpm. Windows (MingW/MSYS) users do not need X11 components. They still need a working GNU C compiler though. Ah, one more note: OpenAxiom requires GNU Make. 1. Lisp and noweb prerequisites ---------------------------- If any of GCL or noweb is missing from your build environment, then you need to either separately install them, or download the dependency tarball open-axiom-1.2.x-dep.tar.bz2 from the SourceForge download site http://voxel.dl.sourceforge.net/sourceforge/open-axiom/open-axiom-1.2.x-dep.tar.bz2 Please, notice that GCL and noweb are needed only to *build* OpenAxiom. If you plan to build OpenAxiom often, then it probably is a good idea to separately build and install those tools once for all. If you already have GCL and noweb installed, please go to step 2. Note however that if you want to build OpenAxiom with the GCL from the dependency tarball (assuming you have unpacked it as explained in step 1.b.), and you have other Lisp systems available in the build environment, then you should add the option --enable-gcl to the configure command line. In short, add --enable-gcl if you specifically insist on GCL as the base Lisp runtime system. 1.a. Download the dependency tarball open-axiom-1.2.x-dep.tar.bz2 1.b. Decompress the dependency tarball tar jxfv open-axiom-1.2.x-dep.tar.bz2 That should decompress the dependency tarball in a directory named open-axiom-1.2.x. Rename it to open-axiom-1.3.0, e.g.: mv open-axiom-1.2.x open-axiom-1.3.0 2. Building OpenAxiom ------------------ It is assumed you have already downloaded open-axiom source tarball, e.g. open-axiom-1.3.0.tar.bz2. Note: If you don't have GCL or noweb in the build environment, please make sure that you have either followed the instructions in step 1., or have separately installed them before proceeding. 2.a. Decompress the OpenAxiom source tarball tar jfxv open-axiom-1.3.0.tar.bz2 2.b. Configure OpenAxiom It is highly recommended that you build OpenAxiom in a directory different from the one that contains the sources. For example, you may create a directory sibling to open-axiom-1.3.0 and build the system from there: mkdir build-oa cd build-oa ../open-axiom-1.3.0/configure It is possible to tell configure where to put the final OpenAxiom executables. By default, when you just type in configure like above, it will configure the system with prefix /usr/local. You can instead say where you want it to be installed, let's say /banana/space. You would then have typed ../open-axiom-1.3.0/configure --prefix=/banana/space If you want to compile OpenAxiom with a specific Lisp system (not necessarily GCL), then you should supply the option --with-lisp= where stands for the executable name of the Lisp of your choice. For example, you might want to add --with-lisp=sbcl to the configuration line if you plan to use the SBCL system; or you can specify --with-lisp=ecl if you want to use the ECL system. Note also that OpenAxiom can coexist with other flavours of AXIOM. 2.c. Make the system Just type make or make 2>&1 | tee build.log if you would like to inspect the build messages later on -- but most users probably don't. 2.d. Have some coffee 2.e. Have more coffee It can take from 25min to 2 hours to build, depending on the compute power of the build machine. 3. Installing OpenAxiom -------------------- Once the build (step 2.) has gone successfully, you may optionally try to regress-test the system -- it can take hours. 3.a. [optional] make check 2>&1 | tee tests.log 3.b. The system is ready to install If you configured the system to install in a place that needs special privilege, e.g. /usr/local that requires administrator write, please make sure that you've gained the adequate privileges. Then, type: make install 3.c. The system is ready for use After step 3.b., your should have a script called `open-axiom', in /usr/local/bin or /banana/space/bin or /whichever/prefix/you/used/bin, ready for use. 4. Enjoy ----- We would like to hear from you. Send us comments and suggestions at open-axiom-help@lists.sf.net About Make ========== OpenAxiom build system requires GNU Make. It might theoretically be possible to cram the Makefiles so that they can work with a large set of Make programs. However, doing so will not be cost effective. GNU Make has been ported to virtually any system current OpenAxiom can build one. In particular, OpenAxiom uses GCL, which in turns requires GCC. GCC requires GNU Make. GCL too requires GNU Make. Consequently, the GNU Make requirement is not a stringent requirement. It just reflects reality. So, if you're using a system where "make" is not GNU Make, then try "gmake" instead. Gabriel Dos Reis