Install the building tools
sudo apt-get update
sudo apt-get install -y build-essential cmake lcov python3-pip
sudo pip3 install setuptools pre-commit
Install the dependencies:
sudo apt-get update
sudo apt-get install -y libboost1.62-all-dev libfltk1.3-dev libjsoncpp-dev
Install pre-commit
pre-commit install
Generate and build the project
cmake .
cmake --build .
Run the tests
make test
# or
make CTEST_OUTPUT_ON_FAILURE=1 test
Coverage
cmake -DCMAKE_BUILD_TYPE=Debug .
make coverage
Show coverage report
# you can replace firefox browser if you want to
firefox coverage/index.html
Linting Checks
make lint
Please follow the style guide: https://google.github.io/styleguide/cppguide.html
Implement a request timeout