Installing Mantid On Linux
From MantidProject
Installing Mantid on Linux via the ISIS Yum repository
yum is a package manager that takes most of the work out of rpm installs for you by automatically handling dependencies. Mantid is now available from the ISIS yum repository for RHEL5 - other Linux distributions will be added soon.
Installing Mantid on Linux via RPM
You will need to install the following (in order):
- g++ v4.3 or newer for openmp
- Qt (v4.4+) and it is development packages (usually available via your package installer)
- SIP (v4.7.9+) and it is development packages (usually available via your package installer)
- PyQt4 (v4.4.3+) and it is development packages (usually available via your package installer)
- QScintilla (v2.2.3+) including the Python bindings (usually available via your package installer)
- Qwt (v5.0.2+) (usually available via your package installer)
- QwtPlot3D (v0.2.7+) and it is development packages (usually available via your package installer)
The following can be installed in any order:
- NeXus Data Format libraries (v2.0+)
- muParser libraries (v1.27+) and its development package (usually available via your package installer)
- Poco libraries (v1.3.0+) and its development package (may be available via your package installer, if not try rpmfind for the latest RPM)
- SCons (v0.98+)
- GNU Scientific Library (v1.10+) and it is development packages (usually available as gsl via your package installer)
- Python (v2.4+) (probably already installed)
- Boost (v1.34.1+) (probably already installed or available via your package installer).
- You may need to set "BOOST_APPEND=-mt" in the Build/Scons_Linux.conf file, as discussed in Building_the_Mantid_Code. This is because the packages installed from Synaptic or aptitude have multithreading enabled, so they show up as "libboost_regex-mt.so" rather than "libboost_regex.so". The "BOOST_APPEND=-mt" flag fixes the error.
- zlib (v1.2.3+) (usually available via your package installer)
- Open Cascade (v6.3+) (on Ubuntu: go to the Synaptic package Manager, and use the full search (not the quick search) to search for "cascade")
You may find with RHEL4 and RHEL5 that the versions of some of the packages may be out of date; in which case it may be possible to find a RPM on the web or to build from source.
After these packages have been installed, it should be possible to install the Mantid RPM.
Troubleshooting Python scripting
In order to use the Python scripting functionality, Python needs to know the whereabouts of the MantidPythonAPI module called libMantidPythonAPI.so. This can be done in one of two ways, either:
- by setting the environmental variable PYTHONPATH to the location of the libMantidPythonAPI.so (If building the code from source this is built in Code/Mantid/Bin/Shared). This needs to be done so that it will be set everytime the machine is logged in by putting the set command into the user startup file (i.e. $HOME/.bashrc)
- by creating a soft-link to the library in the location that you wish to run Mantid. This is either the MantidPlot(qtiplot) directory or the directory you are running a script from.
