... | @@ -6,11 +6,17 @@ The core library uses some C++ 20 features, so we need relatively new compilers. |
... | @@ -6,11 +6,17 @@ The core library uses some C++ 20 features, so we need relatively new compilers. |
|
|
|
|
|
We are using cmake to create build / IDE projects in a platform independent manner. You will need an installation of CMake to use our project. CMake exists for many platforms and HPC systems usually have some version installed.
|
|
We are using cmake to create build / IDE projects in a platform independent manner. You will need an installation of CMake to use our project. CMake exists for many platforms and HPC systems usually have some version installed.
|
|
|
|
|
|
|
|
**Gui**
|
|
|
|
|
|
If you are working on a PC, then you can use the cmake-gui, where you can choose the generator (like Visual Studio projects or Unix Makefiles) with the compiler and then configure the build project.
|
|
If you are working on a PC, then you can use the cmake-gui, where you can choose the generator (like Visual Studio projects or Unix Makefiles) with the compiler and then configure the build project.
|
|
|
|
|
|
If you are using Visual Studio you can alternatively import source code directly as CMake project, which will create a new `out/` subfolder and uses the ninja build system in the back.
|
|
**Visual Studio**
|
|
|
|
|
|
|
|
If you are using Visual Studio you can alternatively import source code directly as CMake project, which will create a new `out/` subfolder and uses the ninja build system in the back. But you can still use the previous method if you prefer.
|
|
|
|
|
|
|
|
**Terminal**
|
|
|
|
|
|
If you only have a terminal (for example on a remote cluster), then you can use the the gui-like terminal program ccmake or directly cmake. Suppose you are working on a Linux based OS and want to clone mlhp into a local folder called `source` and setup a build project for g++-10 in a second folder `build`. If you want a gui-like interactive configuration, then you could do the following:
|
|
If you only have a terminal (for example on a remote cluster), then you can use the the gui-like terminal program `ccmake`. Suppose you want to clone mlhp into a local folder called `source` and setup a build project for the g++-10 compiler in a second folder `build`. For a gui-like interactive configuration, you could do the following:
|
|
```[bash]
|
|
```[bash]
|
|
git clone --recursive https://gitlab.com/phmkopp/mlhp.git source
|
|
git clone --recursive https://gitlab.com/phmkopp/mlhp.git source
|
|
|
|
|
... | @@ -19,4 +25,4 @@ cd build |
... | @@ -19,4 +25,4 @@ cd build |
|
|
|
|
|
ccmake -D CMAKE_CXX_COMPILER=g++-10 ../source
|
|
ccmake -D CMAKE_CXX_COMPILER=g++-10 ../source
|
|
```
|
|
```
|
|
Alternatively, use `cmake` instead of `ccmake` for non-interative configuration. |
|
Alternatively, use `cmake` instead of `ccmake` for non-interative configuration. Variables previously configured in the gui can be passed by adding `-D variable=value` arguments. |
|
\ No newline at end of file |
|
\ No newline at end of file |