# Prerequisites¶

Tip

In the instructions below, some parts are specific to an operating system. Clicking on an operating system logo will show the instructions for that platform.

To build the source code, the first requirement is to have a compiler, and, optionally, the necessary tools to build the documentation. To build the documentation, the following is needed:

• Doxygen 1.7.4 or higher.
• Python 2.5.1 or higher.
• The following python packages, that may be installed using PIP :
• sphinx (Linux: can also be installed with the package python-sphinx)

The compiler suites available vary per platform. We recommend the following setup:

Windows

Visual Studio 2017 with C++ development

Mac OS X

• XCode must be installed. It can be obtained from Apple’s developer website.
• CMake 2.8.12 or higher.

Linux

• g++ version 4.9.0 or higher.
• make version 3.80 or higher.
• CMake 2.8.6 or higher.

We recommend installing these by using the package manager of your distribution. On, e.g., Ubuntu, these can be installed by installing the build-essential PPA package.

## Boost¶

The mCRL2 sources use libraries from the Boost 1.48.0 collection (or a more recent version). The build only depends on the Boost header files, and does not link to any boost libraries.

Windows

To install a binary version of Boost, download Boost from https://www.boost.org, unzip and then compile the Boost libraries yourself.

Mac OS X

Warning

Only a 32-bit version seems to be available at the time of writing. For 64-bit versions, compile the Boost libraries yourself.

Boost can be installed using MacPorts by doing the following:

• First go to http://www.macports.org/.

• After installing open a terminal and execute the following to test and update MacPort:

sudo port selfupdate


Note that port is usually installed in /opt/local/bin.

• To install Boost, execute:

sudo port install boost


Linux

The easiest way to install Boost using the package manager in your distribution. For instance, the libraries can be installed by installing the libboost-*-dev PPA packages when you are using Ubuntu.

You can also compile the Boost libraries yourself.

## Qt¶

The mCRL2 toolset requires Qt for compilation of the graphical tools (diagraphica, ltsgraph, ltsview, lpsxsim, mcrl2-gui, mcrl2xi). Qt version 5.12.0 does not work properly and results in non functioning graphical tools. Qt version 5.12.1 appears to work fine.

Windows

Mac OS X

For MacOS the minimum Qt version supported is 5.10. QT can be installed using MacPorts by doing the following:

• First go to http://www.macports.org/.

• After installing open a terminal and execute the following to test and update MacPort:

sudo port selfupdate


Note that port is usually installed in /opt/local/bin.

• To install QT, execute:

sudo port install qt5-mac


Linux

For Linux the minimum Qt version supported is 5.5. Binary development versions are available in the package manager in most distributions (for instance the qtbase5-dev package in Ubuntu).

On Linux it is also required to install OpenGL related development packages. The exact package to be installed depends on your distribution. For Ubuntu these are e.g. libgl1-mesa-dev and libglu1-mesa-dev.