Requirements
Supported OS
We have tested Xmipp compilation on the following operating systems: Ubuntu 20.04, 22.04 and 24.04 and Centos 7. While compilation and execution might be possible on other systems, it might not be straightforward.
Hardware requirements
At least 2 processors are required to run Xmipp. In some virtual machine tools only one is assigned, please check that at least two processors are assigned to the virtual machine.
Software dependencies
Compiler
Xmipp requires C++17 compatible compiler (see table below for minimum versions). We have had good experience with using GCC. Clang is mostly untested. Mind that when compiling with CUDA, a compatible compiler must be installed and findable (although it may not be used for non-CUDA sources) for Xmipp.
Compiler |
Minimum Version |
---|---|
GCC |
8.4 |
Clang |
5.0 |
Cuda
CUDA is optional but highly recommended. By default Xmippp will search your CUDA installation. Xmipp supports Cuda 11.0 through 12.6. We recommend you to use the newest version available for your operating system. Pay attention to the compiler - CUDA compatibility.
Note
As of may 2025, we have officially dropped support for CUDA 10.2. Please make sure to upgrade to a supported CUDA version (11.0 or higher) to ensure compatibility.
To install CUDA for your operating system, follow the official install guide.
Warning
CUDA 11.5 is not compatible with GCC - 9, please change one of these.
OpenMPI
OpenMPI is required for parallel execution of certain Xmipp programs. It provides support for distributed computing across multiple CPUs and nodes using the Message Passing Interface (MPI).
We recommend installing OpenMPI 3.1 or higher to ensure compatibility with all Xmipp functionalities.
Package |
Minimum Version |
---|---|
OpenMPI |
3.1 |
Note
On Ubuntu-based systems, you can install OpenMPI development files with:
sudo apt install libopenmpi-dev
On RHEL/CentOS-based systems, use:
yum install openmpi-devel
Full list of dependencies
Before installing Xmipp, you need to ensure your system meets certain requirements. Below is a list of required packages and dependencies.
Manually Required Dependencies
The following system-level packages must be installed manually, as they are not handled by the Xmipp installer:
GCC
: C compilerG++
: C++ compilerOpenMPI
development libraries
On Ubuntu-based systems, you can install them using:
sudo apt install -y gcc g++ libopenmpi-dev
On YUM-based systems (e.g., CentOS, RHEL), use:
Note
On CentOS 7, the default GCC version is not compatible with Xmipp. You can enable a newer GCC version using:
yum install centos-release-scl
yum install devtoolset-10
scl enable devtoolset-10 bash
Then, install the dependencies:
yum install gcc gcc-c++ openmpi-devel
Dependencies Automatically Installed via Scipion
Note
The following explanations are available on devel and as of Xmipp 3.25.06.0 - Rhea
If Xmipp is installed through Scipion with the plugin manager or with the terminal , the following packages will be automatically installed in the Scipion environment by default:
cmake>=3.18,<4
hdf5>=1.18
sqlite>=3
fftw>=3
make
zlib
openjdk
libtiff
libstdcxx-ng
libjpeg-turbo
Note
This automatic installation is enabled by default. To disable it, set default=False
in this file For a manual installation of the dependencies, please conside that Xmipp requires CMake 3.17 or above. Ubuntu 20.04 only supports CMake 3.16.3.
These requirements will ensure that your system is ready for installing and using Xmipp. If you encounter a problem, please refer to known and fixed issues. Let us know if something is not working.