- Modern compiler with ``C++11`` support (recen g++, clang, Ubuntu 16.04/Xenial and recent Mac OS clang work fine).
- git-lfs.
-[CMake](cmake) version >= 3.12.
...
...
@@ -51,5 +52,60 @@
7. Install FullMonteSW by following this [guide](https://gitlab.com/FullMonte/FullMonteSW/-/wikis/Developer-Guide#native-development-install-linux-only). We will refer to the build directory of FullMonteSW by ``$FULLMONTE_BUILD_DIR``.
## Installing PDT-SPACE
0. Go to your home directory (or wherever you prefer your workspace to be).
```
> cd $HOME
```
1. Clone the PDT-SPACE repository into your workspace directory.
- Once CMake runs without errors, you will have project files for your chosen generator in the build directory.
-**Note**: The above ``cmake`` command assumes that all the required libraries other than FullMonteSW and Mosek are installed globally using ``sudo`` privilages. If that's not the case, please look at the _CMAKE Variables_ section below that summarizes the important variables you need to supply for ``cmake``.
-**Note**: The above ``cmake`` command defaults to the build tool ``make``. If you want to use ``ninja`` for instance, you need to add the following to the command:
```
cmake -G Ninja
```
7. Build PDT-SPACE: From your build directory, invoke your build tool (``make``, ``ninja``, etc) and the software should be built.
```
> make -j<NUM_THREADS>
```
where ``<NUM_THREADS>`` is the number of threads available on your machine to use to speed up the compile time.
### Notes:
- If the build system *generates correctly* and *then* fails, please log an issue in our bug tracker ([this wiki page](Fixing-bugs-and-adding-features)). It's not a bug if prerequisites are not installed (unless they are undocumented), or if they are installed but not provided to CMake. Please include the command line you used to run `cmake` or `ccmake`, a copy of `CMakeCache.txt` from your build directory, and the error text. Thank you!
- If you wish to install the software for use, it will be installed in the `CMAKE_INSTALL_PREFIX` dir when you run `make install`. Note this may require `sudo` if installing in `/usr` or other global dirs.