scipion logo

Installing Scipion

Prerequisites

Scipion software requires GCC (GCC10 recommended) and OpenMPI already installed. CUDA (11.4 recommended) is optional but highly recommended. Scipion uses conda package manager for installation. Before starting, make sure you do not have other cryo-EM software in your PATH / LD_LIBRARY_PATH as it might conflict with Scipion installation.

For Ubuntu:

sudo apt-get install gcc-10 g++-10 libopenmpi-dev make

For CentOS:

sudo yum -y install epel-release
sudo yum-config-manager --enable epel
sudo yum -y install libzstd-devel hdf5-devel gcc gcc-c++ openmpi-devel

Installation

  1. If you do not have conda already installed (run which conda in your console), install Miniconda as in example below. Alternatively, proceed to step 3.

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh -b -p /path/for/miniconda
  1. Make sure you are running bash shell (run echo $SHELL in your console), then initialize conda:

source /path/for/miniconda/etc/profile.d/conda.sh
  1. Activate base conda environment and install Scipion installer with pip3 provided by conda.

conda activate
pip3 install --user scipion-installer
  1. Install Scipion core and generate default config files

python3 -m scipioninstaller -conda -noXmipp -noAsk /path/for/scipion
/path/for/scipion/scipion3 config --overwrite
  1. Open /path/for/scipion/config/scipion.conf file and append the variables below to the end of the file. Make sure they point to correct locations for CUDA, OpenMPI and other software necessary for Xmipp:

CUDA = True
CUDA_BIN = /usr/local/cuda-11.4/bin
CUDA_LIB = /usr/local/cuda-11.4/lib64
MPI_BINDIR = /usr/lib64/mpi/gcc/openmpi/bin
MPI_LIBDIR = /usr/lib64/mpi/gcc/openmpi/lib
MPI_INCLUDE = /usr/lib64/mpi/gcc/openmpi/include
OPENCV = False

See Configuration guide for more details about these and other possible variables.

  1. Install Xmipp plugin. We have tested Xmipp compilation on the following operating systems: Ubuntu 16.04, Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04 and Centos 7. A list of dependencies can be found here. Command example below is using 12 threads

/path/for/scipion/scipion3 installp -p scipion-em-xmipp -j 12 | tee -a install.log
  1. Create an alias for Scipion launcher in your .bashrc file:

alias scipion3="/path/for/scipion/scipion3"

If any of the steps above fails, check install.log file for errors and refer to the Troubleshooting guide.

Installing other plugins

To list available plugins you can use the plugin manager (recommended) or, alternatively, use the command line tool.

To open the plugin manager, start Scipion (run scipion3) and choose Others > Plugin manager on the top bar. There, any plugin can be easily installed.

Please, refer to the Plugin manager guide to get more details about plugin installation options.

If you have binaries installed for some of the plugins you can have a look at Linking existing software page.

Clusters configuration

To configure Scipion for a cluster you will need to edit the host file

Test the installation

  • Complete some of the Scipion tests:

    • Verify Scipion core plugins by running: scipion3 test --grep pyworkflowtests --run (<1 min)

    • Verify Xmipp compilation by running scipion3 tests pwem.tests.protocols.test_protocols_import_volumes (<1 min). Double check by opening the test project and displaying output volumes with Scipion viewer.

    • Check whether CUDA and MPI work properly: scipion3 tests xmipp3.tests.test_protocols_xmipp_3d.TestXmippProjMatching (2 min)

  • Complete some of the Scipion Tutorials.