Ha14 installation: Difference between revisions

From cctbx_xfel
Jump to navigation Jump to search
(Created page with "IMPORTANT: installing cctbx.xfel is not necessary for most users, as cctbx.xfel is installed at SLAC already and is generally accessible. General users should instead go to [...")
 
Line 26: Line 26:
  $ mkdir cctbx_build
  $ mkdir cctbx_build
  $ cd cctbx_build
  $ cd cctbx_build
  $ python ../cctbx_project/libtbx/configure.py xfel2
  $ python ../cctbx_project/libtbx/configure.py xfel
Next, initialise the running shell using the newly created configuration files. bash(1) should do
Next, initialise the running shell using the newly created configuration files. bash(1) should do
  $ . setpaths.sh
  $ . setpaths.sh

Revision as of 21:30, 25 September 2013

IMPORTANT: installing cctbx.xfel is not necessary for most users, as cctbx.xfel is installed at SLAC already and is generally accessible. General users should instead go to setup to configure their unix account at SLAC to run cctbx.xfel.

The installation can be performed by any regular user, no root privileges are required.

Prerequisite: install and set up the PSDM suite

This is documented at [1] and [2]. It is assumed that ana_env.sh or ana_env.csh has been sourced, a release directory has been configured in ~/myrelease, and that an empty analysis package has been set up in ~/myrelease/my_ana_pkg.

In addition, these software packages need to be available: reportlab, h5py, etc. FIXME

Download and extract cctbx and LABELIT source bundles

This step has to be performed on a host with Internet access. Not all hosts at SLAC have that, but the members of e.g. psexport pool do. In what follows, the absolute path /path/to/cctbx/directory should be replaced with something more appropriate. The directory should accessible everywhere cctbx.xfel is to be run.

$ mkdir /path/to/cctbx/directory
$ cd /path/to/cctbx/directory
$ wget http://cci.lbl.gov/cctbx_build/results/2013_08_13_0005/cctbx_bundle.tar.gz
$ wget http://cci.lbl.gov/~hattne/labelit/labelit_bundle_20130814.tar.gz

Note: new bundles are automatically prepared nightly. It is, however, not advisable to automatically update from the latest bundle. Please check with the program authors before upgrading a critical installation.

Extract the sources:

$ mkdir cctbx_project
$ tar -xpvzf cctbx_bundle.tar.gz -C cctbx_project --strip-components=1
$ tar -xpvzf labelit_bundle_20130814.tar.gz

Configure the source tree

This step and the next require access to a C++ compiler and a python interpreter, version 2.7. At SLAC, the members of the psexport pool do not have any compilers installed, but the interactive nodes, reachable via psanacs, do. Furthermore, the Python interpreter used to configure the source tree must be the same interpreter the PSDM suite uses. At SLAC this interpreter is located somewhere under /reg/g/psdm. To check which file is executed when python is typed on the command line, one can use which python. If this is not the python used by the PSDM suite, the full path to the proper interpreter, e.g./reg/g/psdm/sw/external/python/2.7.2/x86_64-rhel5-gcc41-opt/bin/python, should be given instead.

$ mkdir cctbx_build
$ cd cctbx_build
$ python ../cctbx_project/libtbx/configure.py xfel

Next, initialise the running shell using the newly created configuration files. bash(1) should do

$ . setpaths.sh

while csh(1) users should instead run

$ source setpaths.csh

Compile the sources

$ make
$ make

On SLAC's interactive nodes, this takes just over 6 minutes.

Edit shell configuration files

To make the changes to the environment persistent, bash(1) users are encouraged to add these lines to ~/.bashrc

test -r "/path/to/cctbx/directory/cctbx-build/setpaths.sh" && \
 . "/path/to/cctbx/directory/cctbx-build/setpaths.sh"

csh(1) users should instead add these lines to ~/.cshrc

test -r "/path/to/cctbx/directory/cctbx-build/setpaths.csh" && \
 source "/path/to/cctbx/directory/cctbx-build/setpaths.csh"

Note: to avoid surprises when running cctbx.xfel from a non-interactive shell, it is recommended that bash(1) users edit ~/.bash_profile, and put this line near the top:

test -r "${HOME}/.bashrc" && . "${HOME}/.bashrc"

A job submitted to the cluster will typically run cctbx.xfel from a non-interactive shell.

Link cctbx.xfel modules to the PSDM suite.

$ cd ~/myrelease/my_ana_pkg
$ ln -s /path/to/cctbx/directory/cctbx_project/xfel/cxi/cspad_ana src
$ cd ..
$ scons3

Test the installation

At SLAC, test that it is working by e.g.

$ cd ~/myrelease
$ cxi.pyana -c ~hattne/myrelease/test.cfg /reg/d/psdm/cxi/cxi78513/xtc/e280-r0245-s00-c00.xtc

This should start a viewer, displaying dark-subtracted averages from an XTC stream.