This documentation page refers to a previous release of DIALS (2.2).
Click here to go to the corresponding page for the latest version of DIALS

Installation for Developers

Setting up a Development Environment on Linux or Mac

Prerequisites: make and change to a working directory to contain the new source code and build. Then download these bootstrap modules:


or if wget is not available:

curl >



Explanation: Several steps are performed: update, base, build. If desired, they can be run individually at the command line:

python update
python base
python build
  • “update” checks out or updates source code to the ‘modules’ directory
  • “base” downloads and installs python and third party python packages to the ‘conda_base’ directory
  • “build” configures and compiles dials and cctbx

For subsequent login sessions, be sure to set the environment in order to use the command-line dispatchers:

source build/ # or setpaths.csh for tcsh

Additional packages can be installed in the modules directory, e.g., download the dials_regression tarball from the main dials web page. Additional modules may be configured as in this example:

libtbx.configure dials_regression

Creating a Relocatable Installer Bundle on Linux

Starting with the developer build just created, we can create a tarball suitable for public distribution. Caveat is that we build our 64-bit installer on Centos 5.4, so that most conceivable users will be installing on a more modern OS back-compatible with the installer.

Change to the working directory used above. Then:


..creates an installer called tmp/dials-installer-dev.tar.gz

This can be relocated to a new directory, untarred, then:

cd dials-installer-dev
./install -h [prints a help message]
./install --prefix=[absolute path for relocated dials installation]

Downloading the DIALS regression test data

The DIALS regression test data, needed for some of the DIALS tests, can be obtained here:

cd ../modules
curl > dials_regression.tgz
tar -xzvf dials_regression.tgz
libtbx.configure dials_regression

For those with svn access to the CCI server, it can also be obtained as follows. Checkout the data into the cctbx source directory and configure as follows, replacing “USERNAME” for your username:

cd ../modules
svn checkout svn+ssh:// dials_regression
libtbx.configure dials_regression