Installing the Developer Version of MercuryDPM

The developer version of MercuryDPM—also known as the master branch—contains the latest features and updates. Please note that these features may still be under development and subject to change. If you are looking for a more stable version of the software, we recommend downloading the latest official release instead.

Step 1: Install external dependencies 

On Ubuntu 16.04, you can install the minimum dependencies with the following command:

sudo apt install build-essential g++ gfortran git cmake python3 python3-dev gdb

Install the optional packages on Ubuntu with:

sudo apt install doxygen graphviz

sudo apt install libx11-dev libxt-dev libxres-dev libxtst-dev 

sudo apt install paraview 

sudo apt install openmpi-bin mpi-default-dev 

sudo apt install ninja-build

Step 2: Clone the MercuryDPM repository

mkdir MercuryDPM

cd MercuryDPM

Use this method if you simply want to use or test MercuryDPM:

git clone https://bitbucket.org/mercurydpm/mercurydpm.git MercurySource

No Bitbucket account is required. However, you won’t be able to push changes back.


Use this if you plan to develop your own features (which you are encouraged to contribute back later):

git clone git@bitbucket.org:<yourBitBucketName>/mercurydpm.git MercurySource


If you are a member of the MercuryDPM development team:

git clone git@bitbucket.org:mercurydpm/mercurydpm.git MercurySource

We highly encourage you to create branches while your feature is still in development. This way others can swap to your branch, see the new feature and maybe even comment on/help with it.  

The development team is open to everyone. If you want to be added to the development team, please contact info@mercurydpm.org.

Step 3: Build and Install MercuryDPM

mkdir MercuryBuild

cd MercuryBuild

cmake ../MercurySource

cmake ../MercurySource  -DCMAKE_BUILD_TYPE=Release

make fullTest

This command builds MercuryDPM and runs its test suite. If all tests pass, the installation was successful.

Next steps

To get started with MercuryDPM, follow the beginner tutorials.

Stay Informed

We recommend signing up for the MercuryDPM mailing list to receive updates about the code.