Maxima installation/compilation Mini-Howto

Here is a detailed log on a maxima installation. Although it looks quite messy, the whole thing takes maybe 15 minutes - if nothing goes wrong.

Do you have to compile?


An alternative for Linux-users is to install the binary .rpm-file instead. I have mirrored it here.
Then run
mn@linux:~ >rpm -i maxima-5.4-1.i386.rpm
Maybe you'll have to use the --force or --nodeps-switch after -i.
Also, there have been some cases, where 'wish' was not found. Find it yourself (whereis wish, for a start, or if that does not help find / -name 'wish' ), and then do a ln -s /.../wish /usr/local/bin/wish as root. (...) is the location of 'wish' on your system.
But if all this does not work (like on my system, where I get a segmentation violation when trying to run Maxima afterwards), you'll have to compile it by yourself. Also, if you are working on a non-Linux or non-Intel system:

GCL

But before you can compile Maxima, you need the GCL-sources (Gnu Common Lisp) in a place, where you have write-access to them.
Here are some instructions. Simply installing the binaries from a rpm archive is not sufficient!
When Maxima is finally compiled, you can delete the GCL-directory (30 MB).

Download/unzipping

Download the Maxima file from its original site, or use the version that I used (mirrored at sourceforge, the files are the same).

Then (my home directory is /home/nentwig):
possu% mkdir /home/nentwig/maxima2
possu% cd /home/nentwig/maxima2
possu% gzip -dc maxima-5_4-beta-2.gz | tar -xvf -
possu% cd maxima-5.4

Setting up the configuration file

Then you have to set some paths in the 'configure-file':
possu% emacs configure

You have to modify the first six lines:
GCLDIR=/local/sol/2.6/depot/build/GCL/gcl-2.3
MAXDIR=/local/sol/2.6/depot/build/Maxima/maxima-5.4
EMACS_SITE_LISP=/local/sol/2.6/depot/emacs-20.3/share/emacs/site-lisp

# determines where to install: eg /usr/local/maxima-5.0/ /usr/local/bin ...etc.
PREFIX_DIR=/local/sol/2.6/depot/maxima-5.4

The first line points to the directory, where you compiled GCL. I changed it to
GCLDIR=/home/nentwig/gcl/gcl-2.3

The second line gives the location, where your maxima source is located. Simply type 'pwd' in the shell to get that path.
MAXDIR=/home/nentwig/maxima2/maxima-5.4

The third line tells the location, where emacs lisp files are stored on your system. Since I don't have root access in this installation, I simply made a 'dummy' directory. This is not perfect, but at least Maxima works afterwards.
possu% mkdir /home/nentwig/maxima_emacs
Set the line acccordingly:
EMACS_SITE_LISP=/home/nentwig/maxima_emacs

Finally, we have to choose a directory, where the final 'Maxima'-installation is copied to.
If you have root access, use for example /usr/local/maxima5.4 instead (here, I install into my home directory).
PREFIX_DIR=/home/nentwig/MaximaInstallation

Save this and exit emacs.

Compiling

This will take some time:
possu% ./configure
possu% make

Testing

If something has gone wrong, Maxima will tell you now.
possu% make test

Installing

Now the files are copied from the source directory to where you want them (see last line in configure-file).
possu% su root, if you have root access and want to install it for all users
possu% make install
possu% exit
Finally, you have to either set the place, where 'maxima' is located, in you path. As an alternative, copy it to a place, where it is recognized as a command (for example: as root /usr/local/bin, /home/nentwig/bin).

Trying it

Note: The backspace key is not supported. Use the delete key instead, or run it through an emacs-shell.
possu% maxima
GCL (GNU Common Lisp)  Version(2.3) Sat Oct 14 13:38:28 EET DST 2000
Licensed under GNU Library General Public License
Contains Enhancements by W. Schelter
Maxima 5.4 Sat Oct 14 13:38:22 EET DST 2000 (with enhancements by W. Schelter).
Licensed under the GNU Public License (see file COPYING)
(C1) a:expand((x-1)^30)-1;

      30       29        28         27          26           25           24
(D1) x   - 30 x   + 435 x   - 4060 x   + 27405 x   - 142506 x   + 593775 x

            23            22             21             20             19
 - 2035800 x   + 5852925 x   - 14307150 x   + 30045015 x   - 54627300 x

             18              17              16              15              14
 + 86493225 x   - 119759850 x   + 145422675 x   - 155117520 x   + 145422675 x

              13             12             11             10             9
 - 119759850 x   + 86493225 x   - 54627300 x   + 30045015 x   - 14307150 x

            8            7           6           5          4         3
 + 5852925 x  - 2035800 x  + 593775 x  - 142506 x  + 27405 x  - 4060 x

        2
 + 435 x  - 30 x
(C2) b:factor(a);

                 2              2            4      3       2
(D2) (x - 2) x (x  - 3 x + 3) (x  - x + 1) (x  - 5 x  + 10 x  - 10 x + 5)

   4      3      2              8      7       6       5       4       3
 (x  - 3 x  + 4 x  - 2 x + 1) (x  - 9 x  + 35 x  - 76 x  + 99 x  - 76 x

       2              8      7       6       5       4       3       2
 + 30 x  - 4 x + 1) (x  - 7 x  + 21 x  - 36 x  + 39 x  - 28 x  + 14 x  - 4 x

 + 1)
(C3) quit();

Graphical front-end

When you got Maxima working, it's time to install Symaxx.
This page is hosted at .