Library for learning strategies.
Library-only build requires:
- ptrie (CMake will fetch automatically if not installed)
- nlohmann_json (CMake will fetch automatically if not installed)
Full project requires:
For Ubuntu 24.04 install build tools and library dependencies:
sudo apt install cmake ninja-build g++
sudo apt install libboost-program-options-dev libboost-test-dev # optionalFor macOS install build tools and library dependencies:
brew install cmake ninja gcc
brew install boost # optionalRun minimal compilation (just the library) with Release settings into build-quick/lib:
cmake --workflow --preset quick-releaseInstall the Release build of build-quick into $PWD/local path:
cmake --install build-quick --config Release --prefix $PWD/localDirectory example contains minimal example demonstrating how to use the library.
Test the example with libstrategy installed into local directory:
cmake -S example -B build-example -DCMAKE_PREFIX_PATH=$PWD/local -DCMAKE_MODULE_PATH=$PWD/cmakecmake --build build-example
ctest --test-dir build-example --output-on-failureInspect workflow presets:
cmake --workflow --list-presetsFor example, configure, build and test for Development with Sanitizers (GCC/Clang/AppleClang):
cmake --workflow --preset debug-sanOther configuration presets:
cmake --list-presets=configureOther build presets:
cmake --list-presets=buildOther test presets:
cmake --list-presets=test