Installation¶
System Requirements¶
Modern C++ compiler (supports C++ standard 17).
CMake (version >= 3.9).
The library is tested to work on a GNU-compliant compiling system, but have not tested on other compilers. Feel free to contact us if you have any problem.
Depending on the modules you want to install, other libraries may be necessary. See the Installation Options below.
How to Install¶
Clone or download the Github repository (unzip it if compressed), then enter the root directory of it.
Execute the following shell commands:
mkdir build && cd build cmake .. make make install
This configures, builds the library in the
build/directory, and install it into the default system location.If you want to specify you own installation location, use
cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/installinstead. If successful, two folders named lib and include are generated, which contain the library and header files, respectively. You may add them into environment list.To compile the library parallelly, use
make -j number-of-processes.If your CMake version is recent enough, you can use
cmake --build . -j number-of-processesto compile and usecmake --build . --target installto install.To test whether the library is successfully installed, execute
make testThis runs the test cases and outputs (if any) the errors discovered. You may use
ctest -VVto print detail test output.
Optionally, you can install other modules supported by HIPP. For example, if your system has a MPI environment, you can enable the installation of the MPI module in HIPP, by turning the corresponding option on in the invoke of cmake:
cmake .. -Denable-mpi=ON
The supported modules and system-requirements are (can be turned on simultaneously):
Module |
CMake Option |
Description |
System Requirement |
|---|---|---|---|
MPI |
-Denable-mpi=ON |
Message Passing Interface |
MPI environment (standard >= 3.0) |
IO |
-Denable-hdf5=ON |
IO library |
HDF5 C library (version >=1.8.0) |
SIMD |
-Denable-simd=ON |
Template SIMD library |
x86 Arch that supports SIMD |
NUMERICAL |
-Denable-gsl=ON |
The scientific library |
GSL (>=2.6) |
Other options that can be specified by -D in the invode of cmake are
Option |
Description |
|---|---|
-DCMAKE_CXX_COMPILE=/path/to/compiler |
The C++ compiler (must support standard 17) |
-DCMAKE_CXX_FLAGS=”flag1 flag2 …” |
Compiling and linking flags (default: “-O3 -Wall”) |
-DBUILD_TESTING=OFF |
Whether to build test cases (default: ON) |