Project

General

Profile

Install » History » Version 114

« Previous - Version 114/204 (diff) - Next » - Current version
Dobbs, Adam, 09 January 2012 17:46


Introduction

This page will take you through getting the prerequisites of installing MAUS and ensuring that it's working.

If you have issue, please file a new support ticket by clicking "new issue" above. Below are some common known problems:

DO NOT HAVE WHITESPACE IN DIRECTORY NAME: various third_party packages will break. This is beyond the scope of MAUS. See issue #306.

RAL-ONLY NOTE: please run export http_proxy=wwwcache.rl.ac.uk:8080 (or equivalent) to setup the RAL proxy

Supported Distributions

We support recent versions of
  • Scientific Linux
  • CENT OS

Other Linux distributions are supported on a "best effort" basis.

Prerequisites

Most installation problems are a result of people not reading this section

You will need a few GBs of free space on your harddrive for Geant4 and ROOT (which will be installed along with MAUS).

Scientific Linux/Redhat/Fedora/Centos

To install the tools required to build software on Scientific Linux, you must run the following commands:

sudo yum groupinstall "Development Tools" 
sudo yum groupinstall "Development Libraries" 
sudo yum install wget libX11-devel libXft-devel libXext-devel libXpm-devel libX11-devel libpng-devel

where the sudo command means that this is run as the root superuser. If you do not have this access, you must ask your system manager.

Scientific Linux 4.8 only. Please also run:

sudo yum install xorg-x11-devel

Please return to the beginning of this section and repeat the test.

Debian or Ubuntu

To install the tools required to build software on Debian-based systems, you must run the following commands:

sudo apt-get install build-essential xorg-dev automake autoconf libtool scons zlibc

where the sudo command means that this is run as the root superuser. If you do not have this access, you must ask your system manager.

RAL ONLY. For RAL people, you need to create a file called /etc/apt/apt.conf and fill it with:

ACQUIRE
{
http::proxy "http://wwwcache.rl.ac.uk:8080/";
}

When it installed then please return to the beginning of this section and repeat the test.

OpenSUSE

To install the required tools, you must run the following command:

sudo zypper install -t pattern devel_C_C++

where the sudo command means that this is run as the root superuser. If you do not have this access, you must ask your system manager. Please return to the beginning of this section and repeat the test.

Other distribution

Please try using google to find out how to do it for your specific architecture. If you succeed, then please post those instruction here and continue with these instructions. If you fail, please email the user mailing list ().

Getting the code

If you are a user, it is recommended that you use a release since the repository is meant to be unstable since people are developing on it. If you are a developer, you should user the 'Bazaar' method. Regardless: there are three options for obtaining code.

Using a release (recommended for users)

This is stable code since it is not under development. Please click on the Files tab above and download the file maus-latest-release.tar.gz. Or you could choose to download a later release if you choose. Upon downloading the file (I'm going to assume you're using the latest, but just change the filename if you aren't), then run:

tar xvfz maus-latest-release.tar.gz

to extract the code. You should now have a directory called 'maus-latest-release'.

Bazaar repository (recommended for developers)

Unstable code, this is, since it's under development. The following command checks out the current source tree for MAUS that is under development. This code branch is meant to be unstable since it's being developed on. Please think before using this version.

Bazaar (bzr) is the program we use to maintain the repository. There is a MAUS-specific tutorial of using bzr here. Please branch MAUS. The code is hosted on launchpad under the MAUS project. To get the code, you must then run:

bzr branch lp:maus

and you should now have a directory called 'maus'. If you get a 'command not found', you must install bazaar. If you run into connectivity issues, you can check the bazaar server status here.

If you want to publish results based on MAUS, please use a release version of the code.

Dependencies and building MAUS

MAUS will try to help you by installing all of its dependencies for you.

Please enter the MAUS directory that you just created in the previous section.

*Be careful about using symbolic links to move to this directory prior to installation, as this may confuse the build system. Always try to follow an absolute path instead. *

You can now run the following command to build all your dependencies, build MAUS, and run the tests for you (this takes about 1 hour for most machines, and 3 hours for VMs!):

./install_build_test.bash

where the commands it executes are in repository version

Some of the tests check that errors are handled correctly, so we expect some error messages. The tests should end with a line like:

Ran 79 tests in 251.375s

OK (SKIP=20)

Sometimes the test script may skip some tests because a certain library was not available. A test failure looks like

Ran 79 tests in 251.375s

FAILED (errors=1, failures=1)

If you run into issues, please send the output of:

bash run_tests.bash

to us through an issue by clicking 'New Issue' above.

If you are installing multiple copies of maus on the same machine, it is possible to set them to all use the same set of third party libraries, cutting down the installation time to approximately 10 minutes for each extra installation. After setting up the first installation as above, use same command as before but add an argument specifying the root directory of the first maus installation:

./install_build_test.bash /path/to/original/maus

NB: Make sure that you only do this for installations that use the same version of the third party libraries.

You are now ready to run MAUS!

Troubleshooting

  • I get an error about Python versions when I run ./configure: this is normal - you need to install third party libraries (including python 2.7) by doing
    bash ${MAUS_ROOT_DIR}/third_party/build_all.bash
  • I get errors in the test output: this is normal - if the tests finish with a line like OK, then the tests passed. If the tests finish with a line like FAILED (errors=1, failures=1) (or worse a segmentation fault), then the tests failed. Some of the tests are actually checking that errors are produced on bad input.
  • I am at RAL and I get an error like -bash: nosetests: command not found - before you run the build, you need to setup the proxy. Make sure to do
    export http_proxy=wwwcache.rl.ac.uk:8080
    before you build.
  • MAUS does not import - are you using a symbolic link? See #770