Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
User guide: How to install Scipion 2.0 from sources
Installing Scipion 2.0 from sources
You can install Scipion anywhere, as long as you have write permissions.
If you want to share Scipion installation among different users
you can use
/usr/local or a similar path. If it is only for you, you can
use your home directory as well. If you have a previous installation, we recommend starting
this installation fresh in a new folder.
Clone Scipion repository (install git if not present in your system):
git clone https://github.com/I2PC/scipion.git scipion2 cd scipion2 git checkout release-2.0.0-fixes
Git will create a
scipion2 directory under your current path;
you do not need to create it manually.
To install Scipion from source, some development libraries are required. You can install them with (this example is for Debian/Ubuntu distros.
- For ubuntu 16:
sudo apt-get install gcc-5 g++-5 cmake openjdk-8-jdk libxft-dev libssl-dev libxext-dev libxml2-dev libreadline6 libquadmath0 libxslt1-dev libopenmpi-dev openmpi-bin libxss-dev libgsl0-dev libx11-dev gfortran libfreetype6-dev scons libfftw3-dev libopencv-dev curl
- For ubuntu 18:
sudo apt-get install gcc-5 g++-5 cmake openjdk-8-jdk libxft-dev libssl-dev libxext-dev libxml2-dev libreadline6-dev libquadmath0 libxslt1-dev libopenmpi-dev openmpi-bin libxss-dev libgsl0-dev libx11-dev gfortran libfreetype6-dev scons libfftw3-dev libopencv-dev curl
- For debian 9.7:
sudo apt-get install gcc-5 g++-5 cmake openjdk-8-jdk libxft-dev libssl-dev libxext-dev libxml2-dev libreadline7 libquadmath0 libxslt1-dev libopenmpi-dev openmpi-bin libxss-dev libgsl-dev libx11-dev gfortran libfreetype6-dev scons libfftw3-dev libopencv-dev curl
- For OpenSUSE 42.3
sudo zypper in gcc-c++ gcc5 gcc5-c++ cmake java-1_8_0-openjdk-devel libXft-devel-32bit openssl-devel libXext-devel-32bit libxml2-devel-32bit libreadline6 libquadmath0 libxslt1 openmpi-devel libXss1 libX11-devel-32bit libgfortran4 gcc-fortran libfreetype6 scons libfftw3-3 fftw3-devel libfftw3_threads3 libopencv3_1 curl
- For OpenSUSE 15.0
sudo zypper in gcc-c++ cmake java-1_8_0-openjdk-devel libXft-devel-32bit openssl-devel libXext-devel-32bit libxml2-devel-32bit libreadline6 libquadmath0 libxslt1 openmpi-devel libXss1 libX11-devel-32bit libgfortran4 gcc-fortran libfreetype6 scons libfftw3-3 fftw3-devel libfftw3_threads3 libopencv3_3 curl
- For Centos 6 and Centos 7
sudo yum install gcc gcc-c++ cmake java-1.8.0-openjdk-devel libXft-devel openssl-devel libXext-devel libxml2-devel readline-devel libquadmath libxslt-devel openmpi-devel libX11-devel libgfortran freetype-devel scons fftw-devel opencv-devel curl centos-release-scl devtoolset-4 python27
Centos6: To be able to run python 2.7 (Scipion requirement), run
scl enable python27 bash.
To activate gcc-5/g++-5 (requirement to compile Xmipp), run
scl enable devtoolset-4 bash.
- Note 1 - gcc and g++
You might already have g++ and gcc installed, but it is important to have version 5 for compatibility with certain plugins like Xmipp3. Apart from installing them, you'll need to set them as defaults (e.g. updating the links resulting of typing
which gcc and
which g++ to point to
g++-5 respectively, or using update alternatives as suggested here ).
- Note 2 - CUDA recommendations:
The following table contains the current compatibility of the plugins that use CUDA and have some restrictions with the CUDA versions. To maximize compatibility with all plugins we recommend to install CUDA-8.0, but it's up to you to choose a different version depending on the plugins you'd like to use (depending on this you might not need CUDA at all).
Step3: Configure and Install
After installing the dependencies, you can proceed to generate configuration files. If you had a previous Scipion installation, it is a good idea to rename your current config files
<your_scipion_home>/config/scipion.conf. Now run:
cd scipion2 ./scipion config
You will be asked to share scipion usage only data. Sharing usage data will help to make Scipion better.
This command will generate the configuration files (if not present) and will try to automatically find configuration paths.
If everything is OK (all green in the output) you can proceed to the next step. If there
is a problem (red coloured output), you will need to edit
file in your preferred text editor and run
./scipion config again.
One known change for Ubuntu 18 are the MPI paths in
MPI_LIBDIR = /usr/lib/x86_64-linux-gnu/openmpi/lib MPI_INCLUDE = /usr/lib/x86_64-linux-gnu/openmpi/include/
Read more about editing the configuration file.
some properties of the execution machine. This configuration file is particularly important for
clusters that use a Queue System. If you are installing Scipion on a cluster, you probably will want to check how to configure an execution host.
To compile and install Scipion, just run:
./scipion install -j 5
-j 5 tells the Scipion installer to use 5 processors (cores) for
compilation. You should adjust this value according to your system.
If you have problems compiling Scipion, see Troubleshooting page.
Step 4: Installing Xmipp3 and other EM Plugins
Scipion can use many EM plugins. It is almost mandatory to install
scipion-em-xmipp (i.e. Scipion will run without it but with very limited functionality).
For developers: Developers might want to build xmipp from the latest development version, please head here if this is your case. You might also want to check how to install plugins from the command line.
For users: To list and install plugins including Xmipp, you can use the Plugin manager as shown below (recommended) or alternatively, use the command line tool mentioned for developers.
- Run Scipion
Because we haven't installed xmipp yet, you'll see a message saying something like this in the terminal:
Scipion v2.0 (2019-03-12) Diocletian (release-2.0.0-fixes 50b9908) >>>>> python /home/yaiza/Desktop/scipion/pyworkflow/apps/pw_manager.py >>> WARNING: Xmipp binaries not found. Ghost active.....BOOOOOO! > Please install Xmipp to get full functionality. (Configuration->Plugins->scipion-em-xmipp in Scipion manager window)
- Open Plugin Manager (it will take a minute to load)
- Select Xmipp to install it by clicking on the empty checkbox on the left.
- Add the number of processors you'd like to use (the more, the merrier!). Then click on the install button on the operations tab
- Now we can check the progress on the Output log tab (or go make some coffee, Xmipp installation will take a bit!). You might have to refresh the logs by clicking on the refresh symbol on the right. Please note that messages might not appear in order if we are using more than 1 processor.
- When the operation gets a green check, it's done!
Note: if xmipp installation fails, you might have to uninstall it with the plugin manager:
And manually remove leftover elements:
rm -rf software/em/xmipp*
- Now when we close and re-launch Scipion, we should get no messages.
Scipion v2.0 (2019-03-12) Diocletian (release-2.0.0-fixes 50b9908) >>>>> python /home/yaiza/Desktop/scipion/pyworkflow/apps/pw_manager.py
Please refer to the Plugin manager guide to get more details about plugin installation options.
Step 5: Cleaning up (Optional)
After Scipion is installed and properly working (see how to run tests in the next section) one could clean some temporary files to free some disk space after installation.
Remove the files under
rm -rf sofware/tmp/*
The downloaded .tgz files of the EM packages can also be removed:
rm -rf sofware/em/*.tgz