OpenFOAM® System Requirements

Minimum recommended versions

  • gcc: 4.8.5
  • cmake: 3.3 (required for ParaView and CGAL build)
  • boost: 1.48 (required for CGAL build)
  • fftw: 3.3.7 (optional - required for FFT-related functionality)
  • Qt: 4.8 (optional - required for ParaView build)

System requirements for Ubuntu OS

  • Install the dependencies by copying and pasting the following lines to the command line:
    sudo apt-get update
    sudo apt-get install build-essential flex bison cmake zlib1g-dev libboost-system-dev libboost-thread-dev libopenmpi-dev openmpi-bin gnuplot libreadline-dev libncurses-dev libxt-dev
    sudo apt-get install qt4-dev-tools libqt4-dev libqt4-opengl-dev freeglut3-dev libqtwebkit-dev
  • Paralelisation OpenMPI library together with Scotch and GCAL libraries can be compiled from the ThirdParty directory or the system versions can be installed:
    sudo apt-get install libscotch-dev libcgal-dev
  • To check version of MPI library installed, run: mpirun --version (for Ubuntu 16.04 it will be version 1.10.2)
  • To check compiler version installed, run: gcc --version (for Ubuntu 16.04 the system version will be 5.4.0)
  • System version of cmake is 3.5.2 for Ubuntu 16.04 (cmake --version)
  • System version of CGAL library is 4.7.4 for Ubuntu 16.04 (sudo apt-cache show libcgal-dev)
  • System version of scotch library is 5.1.12b for Ubuntu 16.04 (sudo apt-cache show libscotch-dev)
  • The GCC compiler is used as the default, with additional support for Intel ICC (from version 15.0.3) and LLVM Clang (from version 3.4)

System requirements for OpenSUSE Tumbleweed OS

Install the dependencies by copying and pasting the following lines to the command line:

sudo zypper install -t pattern devel_C_C++
sudo zypper install cmake boost-devel gnuplot mpfr-devel openmpi-devel glu-devel
sudo zypper install libQtWebKit-devel libqt4-devel qt4-assistant-adp-devel qt4-x11-tools

This installs

  • MPI library: openmpi 1.8.8
  • gcc:5.2.1
  • cmake: 3.3.2
  • CGAL: 4.7-1.2

Check that the openmpi installation can be found, e.g.

mpicc --show

This should display a complete compilation line. The command above is used in OpenFOAM to obtain the compilation and link options. If the command cannot be found, the following lines need to be added to the user’s $HOME/.bashrc:

export PATH=$PATH:/usr/lib64/mpi/gcc/openmpi/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/mpi/gcc/openmpi/lib

Using IntelMPI

To run with IntelMPI, for any version above IntelMPI 5.1, e.g. 5.1, 2017.1, etc., use the LD_PRELOAD environment variable to pre-load the appropriate Intel® MPI binding library. For more details, see INTELMPI release note page 13 The following line must be added to the user’s $HOME/.bashrc

export LD_PRELOAD=""