The current stable version of SPEX is 3.04.00 and is available for 64-bit Linux systems and Mac OSX 64-bit. If you are running the older SPEX 3.03.00 version or earlier, we strongly recommend to update! Download the installation files or the tar file below and read the installation instructions.


The stable version of SPEX for Mac OSX on Intel processors is 3.04.00, which should work on OSX versions >=10.10 (Yosemite). Please make sure you also have XQuartz installed on your Mac before you install SPEX. This is the only dependency. 

SPEX 3.04.00 for Mac OSX 10.10 and above (.dmg)

IMPORTANT: After installation, do not forget to source the /opt/spex/ file to set the correct environment before running SPEX. For tcsh users, the file is called /opt/spex/spexdist.csh.

macosx:~> source /opt/spex/

macosx:~> spex


We provide an (almost) universal Linux binary for 64-bit Linux systems with glibc versions >=2.12*.

Download for 64-bit linux (tar.gz)

  • Unpack the tar file in the destination directory (for example ~/software/ or any other directory that you have access to):
    tar xvfz SPEX-{dist}.tar.gz
    Replace {dist} with the version number. The tar file will create a directory called SPEX-3.04.00-Linux in which the program will be installed.
  • Set the environment variable SPEX90 to the installation directory (for example ~/software/SPEX-3.04.00-Linux):
    export SPEX90=/path/to/your/SPEX-3.04.00-Linux (bash shell)
    setenv SPEX90 /path/to/your/SPEX-3.04.00-Linux (C-type shell)
  • Source the script provided by the distribution:
    source $SPEX90/ (bash shell)
    source $SPEX90/spexdist.csh (C-type shell)
  • Remove the tar file:
    rm SPEX-{dist}.tar.gz

* Check your glibc version by executing 'ldd --version' in a terminal window.


We also provide a Docker image with a SPEX installation which can run on any platform supported by Docker. To use this option, you first need to install Docker on your machine. See this link for instructions.

When the docker application is installed, you can download the SPEX image from the docker cloud:

docker pull spexxray/spex

If the image is downloaded successfully, you can run SPEX in a so-called container. To make sure you can access your files, you can mount a local directory into the container. In addition, the container also needs access to a local X server. This is all arranged with flags to the 'docker run' command. We advise you to make a script like this:

docker run -it \
           -e DISPLAY=$DISPLAY \
           -e LOCAL_USER_ID=`id -u $USER` \
           -v /tmp/.X11-unix:/tmp/.X11-unix \
           -v /YOUR_DATA_DIR:/home/user \
           -w /home/user \

Please change 'YOUR_DATA_DIR' to the directory path where you keep your spectral data.

Docker on Mac and Windows

On Windows and Mac, the container needs a network connection to connect with the X server. So a program like XQuartz (Mac) or Xming (Windows) needs to be installed. Instead of the $DISPLAY variable in the script above, you need to specify the IP address of the host computer and the display number (usually 0), so for example '-e DISPLAY='. In addition, the X server needs to accept incoming X clients through the network. Please see the documentation of your X server how to do that. Usually, a command like 'xhost +' (with your IP address) does the trick. 

Important note

The Docker application runs containers as root, which could create a security breach and give users root access on their local machines. Therefore, do not give docker access to non-trusted users.