MacOS instructions

Below we list the various dependencies required to build the mCRL2 toolset in its basic configuration. For testing and building the documentation we need additional dependencies that are listed at the end. We can use Homebrew to acquire the necessary dependencies easily or use the provided websites to acquire them individually.

  • XCode must be installed. It can be obtained from Apple’s developer website. Afterwards we have to execute xcode-select –install to install the required command line tools.

  • Boost library sources, which can be downloaded from and extracted in any desired location.

  • Qt version 6.2.4. Download and install Qt, which requires a Qt account.

  • CMake 3.14.0 must be installed.

  • Python 3.6 <> is optionally needed for various activities such as testing, building documentation and code generation.


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. Qt 5.13.0 appears to support dark mode on MacOs Mojave properly, whereas earlier versions of Qt do not properly adapt the color schemes leading to unreadable (white on white) text in some tools.


If Qt cannot be found automaticall, for example when it is installed using the official installer, then the cmake variable Qt6_DIR must be set to the install directory followed by /lib/cmake/Qt6.

A user-friendly command-line interface is provided by the ccmake executable. Example usage is as follows (from the directory mCRL2-build):

ccmake ../mCRL2

From the interface you are presented with, you can choose the options explained on the instructions. Then prcessing c will configuration the project, and pressing g will generate the Makefile. For compilation using multiple cores, use the -j flag; e.g., to compile using 4 cores, use:

make -j4


For every tool, an individual make target is defined. To compile only mcrl22lps, for instance, use:

make mcrl22lps