EXPO is built on OpenGL for three-dimensional molecular visualization and Qt 6 for the graphical user interface. It runs on the most popular operating systems, including Windows, macOS, and several Linux distributions.
The 64-bit version of EXPO is available for Windows and has been tested on Windows 10 and 11.
- Download the installer
expo-xx.yy.zz_install.exe
from:
👉 http://www.ba.ic.cnr.it/softwareic/expo/expo-download/ - Double-click the downloaded file and follow the on-screen instructions to complete the installation.
- Once installed, you can launch EXPO by double-clicking its desktop icon (or from the Start Menu).
- Download the DMG file
You can download the latest version of Expo from the official website:
👉 https://www.ba.ic.cnr.it/softwareic/expo/expo-download/
The DMG was prepared on macOS Monterey, but it also works on later versions. - Open the DMG
Locate the downloadedExpo.dmg
file (usually in your Downloads folder) and double-click it to open. A new window will appear showing the application icon. - Drag and Drop
Drag the Expo icon into the Applications folder shortcut inside the window. This copies the application to your system’s Applications directory. - Eject the DMG
Once the copy is complete, right-click the mountedExpo
volume on the desktop and select Eject, or drag it to the Trash. - Launch the Application
Open Finder → Applications, locate Expo, and double-click to launch it.- On the first launch, macOS may display a warning that Expo is from an unidentified developer. If this happens, right-click (or Control-click) the Expo icon, select Open, and then confirm.
- After this initial confirmation, Expo will open normally in the future.
Installing from binary package
Debian and Red Hat RPM packages are available via the download page.
For Ubuntu 22.04 LTS (jammy)Â install all the required dependencies:
sudo apt-get update sudo apt-get install gfortran qt6-base-dev libopenbabel7 openmpi-bin
Run the following command to install the debian package expo_xx.yy.zz-jammy_amd64.deb
dpkg -i expo2-xx.yy.zz-jammy_amd64.deb
The name of the EXPO executable is expo.
If your operating system is not listed above and you are having trouble installing EXP02014, contact us.
EXPO can be launched by
1. Double click the icon of the EXPO icon
2. Type the expo command. Read the section command line usage for more details.
Compiling from source
- Install build tools and graphic development packages
Most Linux distributions come with the core set of development tools already installed but if not, you will need to install the following packages via the appropriate package manager: cmake, C++ and Fortran compilers, Open Babel library, Open MPI library.
Fortran compiler compliant with Fortran 95 standard is required: EXPO has been written and tested using the Intel Fortran Compilers (ifort, mpiifort) but if the IFORT is not available, GNU Fortran (gfortran, mpifort) could be also used.
On Ubuntu 22.04 LTS (jammy) all these dependencies can be installed running the following commands:
sudo apt-get update sudo apt-get install cmake build-essential gfortran libgl1-mesa-dev qt6-base-dev libopenbabel-dev libopenmpi-dev
On Ubuntu 23.10 (mantic) and subsequent versions all these dependencies can be installed running the following commands:
sudo apt-get update sudo apt-get install cmake build-essential gfortran qt6-base-dev libopenbabel-dev libopenmpi-dev
On Fedora 40 and subsequent versions all these dependencies can be installed running the following commands:
sudo dnf install cmake gcc-c++ gcc-gfortran qt6-qtbase-devel openbabel-devel openmpi-devel
To use the OpenMPI compiler (mpifort) and mpirun on Fedora, you need to load the OpenMPI module:
source /etc/profile.d/modules.sh module load mpi/openmpi-x86_64
- Get the sources and make the executables
Download the file expo2-xx-yy-zz.tar.gz from www.ba.ic.cnr.it/softwareic/expo/expo2014-download/
Navigate to the directory where you downloaded the tarball and extract it using the following command:
tar xvzf expo2-xx-yy-zz.tar.gz cd expo2-xx-yy-zz
Configure EXPO using CMake with the following command:
cmake -B build -S . -DCMAKE_Fortran_COMPILER=mpifort
You can specify the Fortran compiler during configuration using the -DCMAKE_Fortran_COMPILER option. Replace mpifort with the desired compiler name:
- gfortran for the GNU Fortran compiler
- mpiifort for an MPI-enabled Intel Fortran compiler
- ifort (or the specific Intel compiler executable name) for Intel Fortran compilers
Download and install Intel Fortran compilers from the Intel oneAPI website if you choose to use them: https://www.intel.com/content/www/us/en/developer/tools/oneapi/toolkits.html.
Compile EXPO using the following command:
cmake --build build -j4
The -j4 flag specifies the number of parallel threads to use for compilation. You can adjust this number according to your system’s capabilities.
Install EXPO using the following command:
sudo cmake --install build
This will install EXPO into the system’s default installation directory, which is typically /usr/local/ on most Linux systems.
Optional Installation with Custom Prefix:
To install EXPO to a non-standard location, use the -DCMAKE_INSTALL_PREFIX option during the CMake configuration step:
cmake -B build -S . -DCMAKE_Fortran_COMPILER=mpifort -DCMAKE_INSTALL_PREFIX=/your/custom/installation/path cmake --build build -j4 cmake --install build
This will install EXPO to the specified /your/custom/installation/path directory.
Running EXPO
Once EXPO is installed, you can run it from the command line using the following command:
expo
To run EXPO from the command line, the EXPO executable must be in your PATH environment variable. If you installed EXPO to the default location (/usr/local/), it should already be in your PATH. However, if you installed EXPO to a different location, you will need to add that directory to your PATH. You can add the following line to the shell configuration file (e.g., .bashrc for Bash), replacing <destination_directory> with the actual directory where EXPO was installed:
export PATH=<destination_directory>/bin:$PATH
This line adds the <destination_directory>/bin directory (which likely contains the EXPO executable) to your PATH.
When typing the `expo` command, you can supply different types of input files.
To run Expo with an input file and produce an output file:
expo merca.exp merca.out
This command starts Expo running the expo input file merca.exp and generates the output file merca.out.
The output file may be omitted:
expo merca.exp
Or you can simply type:
expo
In addition, Expo can read crystal structures from different file types (e.g. *.cif) . For example, to open a CIF file at startup:
expo paracetamol_best1.cif
You can provide a powder diffraction data file (e.g. `*.xy`, `*.dat`):
expo merca.xy
Expo can also be launched from the command line with additional options:
--version
→ prints information about the current version and build of the software.--nogui
→ runs EXPO without starting the graphical interface.- Example:
expo merca.exp --nogui
- Example:
--auto
→ runs EXPO with the graphical interface, but the program starts and exits automatically, without requiring user interaction.
To display a brief help message showing the main command-line options, use:
expo --help
If you are using the MPI compiled version of expo read the section dedicated to the parallel execution.
Test structures can be found in the folder examples. On Windows, this folder is typically located in C:\Users\username\share\expo\examples. On Linux, it is usually located in:Â installation_dir/share/expo/examples (e.g., /usr/local/share/expo/examples). To run the program, select a test structure via the menu File > Load Examples
Click the icon on the toolbar to perform the steps of structure solution.
Three test structures are provided and described in the Tutorials section.