Repository navigation
Developer Notes
This page is mainly for project developers and/or contributors
for gtest installation : https://gist.github.com/Cartexius/4c437c084d6e388288201aadf9c8cdd5?permalink_comment_id=2822039#gistcomment-2822039
sudo apt-get install libgtest-dev
cd /usr/src/googletest/googletest
sudo mkdir build
cd build
sudo cmake ..
sudo make
sudo cp lib/libgtest* /usr/lib/
cd ..
sudo rm -rf buildThen do:
sudo mkdir /usr/local/lib/googletest
sudo ln -s /usr/lib/libgtest.a /usr/local/lib/googletest/libgtest.a
sudo ln -s /usr/lib/libgtest_main.a /usr/local/lib/googletest/libgtest_main.aHow to install Ninja
-
On Windows (via Chocolatey):
choco install ninja
-
On linux
sudo apt-get install ninja-build
Starting from version 0.1.2, we added support for AddressSanitizer, MemorySanitizer, and UnifiedBehaviorSanitizer in CMake scripts and GitHub Actions CI. Support with Bazel and Windows platforms (Bazel + CMake) is not yet ready. We faced a lot of hassle with sanitizers on Windows platforms, whether using Clang or MSVC toolchains.
We recommend using Unix‑based platforms when debugging sanitizer issues.
sudo apt-get install libc++1-11https://ubuntu.pkgs.org/22.04/ubuntu-universe-amd64/libc++1-11_11.1.0-6_amd64.deb.html
Clang-Format: Formatting tool for your C/C++ code:
- Documentation for Clang-Format: Link
Clang-Tidy: Static linting tool for your C/C++ code:
- Documentation for Clang-Tidy: Link
Cmake-Format:
pip install cmake-format # python 3.7+sudo apt-get install gcovr
pip install -U gcovrIt's included in the LLVM toolchain, but also installable by apt, brew, winget etc.
https://github.com/llvm/llvm-project/releases/tag/llvmorg-16.0.0