Table Of Contents

Previous topic


Next topic


Building and Installing IPLT from Source

Installing the dependencies

IPLT is based on OpenStructure and uses the GNU Scientific library (gsl) in addition to the OpenStructure dependencies to perform some calculations. Therefore, before IPLT can be compiled, the following dependencies have to be installed:

Downloading IPLT

IPLT uses git as the revision control system. The main repository can be browsed here. To get the source code, use git clone:

git clone <directory-name>

IPLT includes OpenStructure as a submodule which gets automatically built upon building of IPLT. To pull down the ost submodule use:

git submodule update --init

within the main iplt directory.


IPLT uses CMake for compiling and building the project. The next required step is to configure the build environment using cmake. You can do that by creating a build directory and invoking cmake within the built directory:

mkdir build
cd build
cmake .. <options>

There are two kinds of options: Options that let you control the building behaviour and options that let you tell CMake where to find the dependencies. All of them are passed to CMake with via -D<opt>=<value>.

Flags to Control the Dependencies

By default, CMake searches the standard directories for dependencies. However, on some systems, this might not be enough. Here is a short description of how CMake figures out what dependencies to take and how you can influence it.

  • Boost is mainly controlled via the BOOST_ROOT option. If boost wasn’t found, it should be set to the prefix of the boost installation.
  • QT_QMAKE_EXECUTABLE defines the exact Qt installation to take. It should be set to the full path to qmake.
  • PYTHON_ROOT is the Python equivalent of BOOST_ROOT. It should be set to the prefix path containing the python binary, headers and libraries.
  • SYS_ROOT controls the general prefix for searching libraries and headers. By default, it is set to /.

Build Options

  • If OPTIMIZE is set to 1, an optimized version of IPLT is built.

Building the Project (Linux/OSX)

Invoke make in the build directory. If you are using a multi-core machine, you can use the -j flag to run multiple jobs at once. For example to use 4 jobs simultaneously type:

make -j 4

Building the Project (Windows)

On Windows cmake will generate a solution file that you can open with Microscoft Visual Studio to build IPLT.

Creating packages (optional)

IPLT uses CPack to generate binary software packages for installation. To create a binary package use the following command in your build directory:

make package

Building the documentation

HTML and Latex documentation can be directly built from the git repository. To build the documention following packages have to be installed:

For recent Fedora distributions the packages can be installed with:

sudo install texlive texlive-scheme-medium texlive-threeparttable texlive-wrapfig python-sphinx python-pip doxygen
sudo pip install breathe

HMTL documentation

The HTML documentation can be generated using:

make html_doc

The HTML documentation will be located in the sub folder stage/doc/html.

Latex documentation

The Latex documentation can be generated using:

make latex_doc

The Latex documentation will be located in the sub folder stage/doc/latex. It can be converted to pdf by running pdflatex twice. The first run will create an updated table of content, which will be included in the pdf in the second run.

cd stage/doc/latex
pdflatex IPLT.tex
pdflatex IPLT.tex