The University of Queensland Homepage
UQ VisLab UQ VisLab

 SAGE on Debian Lenny
Overview

Building the SAGE software on Linux requires various tweaks, depending on the distribution being used. The necessary steps to build SAGE for Debian 5 (Lenny) are detailed here.

It is assumed that the software will be installed in a user's home directory. Appropriate changes to the following instructions will be necessary if installing elsewhere. To eventually run SAGE, it is assumed that the NVidia display driver has been installed and is being used. Please note that if module-assistant has been used to install the nvidia module, it may still not work correctly with SAGE due to a problem with mismatching glx module symbols. To overcome this, download and install the latest NVidia driver manually.


Compiling SAGE

1. Set up a SAGE environment, in particular a SAGE_DIRECTORY path and associated program execution and library paths. Edit the .bashrc file in the user's home directory. At the end of the .bashrc file, add the following lines:
    export SAGE_DIRECTORY=$HOME/sage3.0
    export PATH=${SAGE_DIRECTORY}/bin:${PATH}
    if [ -z ${LD_LIBRARY_PATH} ]; then
        export LD_LIBRARY_PATH=${SAGE_DIRECTORY}/lib
    else
        export LD_LIBRARY_PATH=${SAGE_DIRECTORY}/lib:${LD_LIBRARY_PATH}
    fi

Now exit any shell being used and open a new one. Run the command:
    env | grep SAGE
and
    env | grep LD_

These commands should return results consistent with the settings made above. There's no point in continuing until this step has been completed successfully.

2. Now unpack the source tarball and make some small changes to the source code to enable correct compilation. In the home directory, unpack the source tarball e.g.
    cd
    tar zxvf sage3--03-24-09.tgz
which will create the sage3.0 directory (your SAGE_DIRECTORY)

If audio is to be enabled, edit the file sage3.0/config.mk and change the line:
    #AUDIO=1
to
    AUDIO=1

  Also in sage3.0/config.mk, change the line:
    ARCHITECTURE=$(shell uname -p)
to
    ARCHITECTURE=$(shell uname -m)

Then, if running on amd64 architecture, change (at about line 97):
    XLIBS=-L/usr/X11R6/lib64 -lGLU -lGL -lXmu -lXi -lXext -lX11
to
    XLIBS=-L/usr/lib64 -lGLU -lGL -lXmu -lXi -lXext -lX11

Otherwise, if running a 32bit system, change (at about line 120):
    XLIBS=-L/usr/X11R6/lib -lGLU -lGL -lXmu -lXi -lXext -lX11
to
    XLIBS=-L/usr/lib -lGLU -lGL -lXmu -lXi -lXext -lX11

3. Install various prerequisite packages with the following apt-get command - some may already be installed but apt-get  is smart enough to do the right thing. Run:
    sudo apt-get install build-essential libsdl1.2-dev freeglut3-dev libxmu-dev libxi-dev libreadline5-dev libmagick++9-dev portaudio19-dev python-wxgtk2.8 python-numpy

(the last two of these packages are needed later for running the SAGE software, not actually compiling it, but may as well install them all at once)

4. The software can now be built from inside the sage3.0 directory:
    cd $SAGE_DIRECTORY
    make install

Note:
   don't go into the src directory; build from $SAGE_DIRECTORY
   don't do a plain make first; go straight to make install

Running SAGE