This document is a guide about preparing an environment for Damaris compilation on Linux. If you want to have the environment ready on your Linux machine or on a remote linux server, read this guide. But if you want to prepare an environment on Docker, check this page. Please note that:
- Damaris compilation is not currently supported on Mac or Windows environments. The only supported environment is Linux.
- Throughout this document, we suppose that the environment variable install_prefix is declared and its value is equal to $HOME/local.
Before building the dependant libraries, make sure that basic compilers (C/C++ and Fortran) and also git are installed on your machine. To make sure about their installation, you can simply get the installed version from command line:
1 2 3 4 | $ gcc --version $ g++ --version $ gfortran --version $ git --version |
if any of the mentioned packages are not installed, you should install the related packages (GCC 4.8.0 and later). To install fortran/c/c++/git on Debian-based distributions you can use these commands:
1 2 3 4 5 | $ sudo apt-get install gfortran $ sudo apt-get install gcc $ sudo apt-get install g++ $ sudo apt-get install git-core $ sudo apt-get install python-dev |
Then, you should build and install the following dependant libraries and tools. You can either do the installation process manually or automatically. Check this page for more info about it. The link to the right version of all needed libraries is provided in table below.
Ref | Library Name | Status | Prefered Version | Description |
1. | CMake | Obligatory | 3.12.3 | Is used for creating the make files |
2. | MPI | Obligatory | mpich 3.2.1 or openmpi 3.1.2) | Booth MPICH and OpenMPI is supported |
3. | Xercess | Obligatory | 3.1.4 | Is used for XML parsing and manipulation. |
4. | Xsd | Obligatory | 4.0.0 | Is used for auto-generation of XML related classes |
5. | Boost | Obligatory | 1.67 | Some libs such as system, thread, log, etc. are used. |
6. | CppUnit | Optional | 1.12.1 | Is used for unit testing |
7. | HDF5 | Optional | 1.8.20 | Is used for writing simulation results to HDF5 |
8. | VisIt | Optional | 2.13.2 | Is used for in situ visualization with VisIt |
9. | ParaView Catalyst | Optional | 5.6 | Is used for in situ visualization with ParaView Catalyst. |