Downloading and Installation of XDS

The XDS package comprises two compressed tar-files containing the documentation and the executable programs, respectively.


To obtain a local copy of the XDS documentation (and the .INP file templates), download the compressed tar-file named XDS_html_doc.tar.gz to your Desktop. Uncompress and untar the downloaded file. This will create a directory named XDS_html_doc that you can locally access for consultation by your browser. The downloaded tar-file is no longer needed and can be deleted.


(Expiration date: Mar 31, 2022)

For downloading select the tar-file appropriate for your computer and operating system.

name of tar-file for downloading computer operating system
XDS-INTEL64_Linux_x86_64.tar.gz Xeon, Intel Core Duo, Opteron Linux x86_64, 64 bit
XDS-OSX_64.tar.gz iMac, MacBookPro,Intel processors Mac OSX version_min,10.10, 64 bit

NOTE Installation of XDS under macOS Catalina.
After downloading the XDS-OSX_64 tarfile un-tar it and run the xattr command:
tar xvf XDS-OSX_64.tar
xattr -dr XDS-OSX_64/*
in order to avoid the message "quarantine because untrusted software".

The downloaded file contains the executables as mentioned in the table below.

Executable Programs that can be called by the user are in bold face.
xds Program for processing rotation images using a single cpu at each cluster node.
xds_par Multi-processor version of xds for up to 99 cpu's at each cluster node.
xscale Scaling program for XDS-produced data sets (single-processor version).
xscale_par Multi-processor version of xscale for up to 99 cpu's.
xdsconv Converts reflection intensities determined by XDS to amplitudes in a format suitable for various structure solution program packages.
2cbf Program to convert various detector image formats to CBF.
merge2cbf Program to convert (and merge) a series of detector images from their native format to CBF.
cellparm Computes mean cell constants from a number of XDS-runs.
pix2lab Helps to find the correct mapping of image pixels to the laboratory frame.
  The following programs are called only by XDS
forkxds Shell script invoked by XDS for distributing computations to the nodes of a cluster.
mcolspot invoked by forkxds as a main program in single-processor mode for spot finding.
mcolspot_par invoked by forkxds as a main program running under OpenMP for spot finding.
mintegrate invoked by forkxds as a main program in single-processor mode for integration.
mintegrate_par invoked by forkxds as a main program running under OpenMP for integration.


System or administrator privileges are not required for installation. The XDS package is just a folder containing the executables listed above and all you have to do for installation is to include this folder in the search path for executables.

Uncompress and untar the downloaded file. This will create a directory named XDS-INTEL64_Linux_x86_64, for example, when you selected the XDS-package for your Intel Core Duo processor running Ubuntu8.1.

Type echo $SHELL to find out which shell you are using. For the bash shell you could append the following lines to your standard personal initialization file ~/.bashrc. (For Mac OS use ~/.bash_login instead).
export PATH=full_path_name_to/XDS-INTEL64_Linux_x86_64:$PATH
The first line makes the executables of the XDS package accessible, while the second line defines the stack size limit of the Linux POSIX threads libraries used by OpenMP for xds_par. The limit 8m may need to be increased if xds_par collapses with a segmentation fault in the COLSPOT or INTEGRATE step for some of your data sets.

This completes installation of the XDS package for the example case. As a check you can open a new terminal window and issue the command which xds or which 2cbf or which forkxds. Removal of an obsolete XDS package is equally simple and only requires deletion of the folder and of two lines in your ~/.bashrc script. There are no other side effects to worry about.

Installation on a computer cluster

Additional work is only needed for installation of XDS on a cluster system of computer nodes in a networked (NFS) environment where each node may in turn consist of several cpu cores sharing a common address space. To prevent being asked for a password each time by each of the nodes, use of authentication keys for ssh is recommended. For each user such a key can be generated by the following procedure.

Assuming that your home folder ~ is mounted on all nodes of the computer cluster, you should then be able to ssh to any of them without being asked for your password. Also, there is no need to specify the names of the nodes of the cluster during program installation. The names of the nodes you want XDS to use for your data processing run are specified in XDS.INP by the parameter CLUSTER_NODES=. Optimal use of the hardware is made automatically by XDS - depending on the size of your data set.

© 2005-2021, MPI for Medical Research, Heidelberg Imprint Datenschutzhinweis.
page last updated: Feb 5, 2021