Installing
- The compiling process is mainly for the plotting functionality if you don't want that then you can just include the header files and you are good to go
- If you want to install the header files into a standard directory then follow the compiling process below (without SFML) and add this cmake flag
- The scripts are also made to compile the library with the plot functionality
- Tested Platfroms
- Linux Ubuntu 18.04
- macOS 10.13 with xcode 9.4.1
- Windows 10 version 1809
- Dependinceis
- cmake version 3.13 or higher
- SFML version 2.5 or higher (for plots)
- GNU c++ compiler version 6.1 ot higher (C++ 14 features)
- GNU make version 4.1 or higher
Linux Compilation
- Run the following script or follow the steps below
1) Install SFML dependencies (if needed)
cd scripts chmod 755 linux.sh ./linux.sh
2) Cmake new version (if needed)sudo apt-get -y install libpthread-stubs0-dev sudo apt-get -y install libgl1-mesa-dev sudo apt-get -y install libxrandr-dev sudo apt-get -y install libfreetype6-dev sudo apt-get -y install libglew1.5-dev sudo apt-get -y install libjpeg8-dev sudo apt-get -y install libsndfile1-dev sudo apt-get -y install libopenal-dev sudo apt-get -y install libx11-dev sudo apt-get -y install xorg-dev sudo apt-get -y install freeglut3-dev sudo apt-get -y install libudev-dev
3) BuildCMAKE_URL="https://cmake.org/files/v3.19/cmake-3.19.0-Linux-x86_64.tar.gz" mkdir cmake && wget --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C cmake
mkdir build cd build # or use ../cmake/bin/cmake .. -DNO-TEST=True cmake .. -DNO-TEST=True make sudo make install
Macos Compilation
- Run the following script or follow the steps below
1) Normal build
cd scripts chmod 755 macos.sh ./macos.sh
mkdir build cd build cmake .. -DNO-TEST=True make sudo make install
Windows Compilation
- Run the following script or follow the steps below
1) Install chocolatey (if not installed)
.\windows.ps1
2) Install C++ compilers (if needed)Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
3) Buildingchoco install mingw choco install cmake choco install make choco install gsudo
mkdir build cd build cmake -G "Unix Makefiles" .. -DNO-TEST=True make sudo make install
Compilation flags
- No plotting functionality
cmake .. -DNO-TEST=True -DNO-PLOT=True
- Enable Unit tests
cmake .. -DNO-TEST=False