C++ Build Tools and Code Quality
Build systems, package managers, compilers, debuggers, analysers, test and benchmark frameworks.
This is an overview — pick a sub-topic below.
Sub-topics (21)
CMake
The de-facto C++ build generator.
Ninja
A small, very fast build executor, usually generated by CMake or Meson.
Make
The classic build tool driven by Makefiles of targets, dependencies and recipes.
Meson
A fast, user-friendly build system with a Python-like syntax, using Ninja underneath.
Conan
A C/C++ package manager with binary package caching.
vcpkg
Microsoft's cross-platform C/C++ library manager, integrated with CMake.
Compiler Flags
Options that control warnings, optimisation, standards and debug info.
GCC
The GNU Compiler Collection — the standard on Linux and for ARM embedded (arm-none-eabi-gcc).
Clang
The LLVM-based compiler with clear diagnostics and the tooling ecosystem (clang-tidy, clang-format, clangd).
MSVC
Microsoft's C++ compiler in Visual Studio.
GDB for C++
The GNU debugger understands classes, templates and STL containers (with pretty-printers).
LLDB
LLVM's debugger, default with Xcode and usable on Linux/Windows.
Sanitizers for C++
ASan, UBSan, TSan and MSan detect memory errors, UB, data races and uninitialised reads.
Static Analysis for C++
Tools that find bugs without running code — null dereferences, leaks, misuse of APIs.
clang-tidy
A linter with hundreds of checks including Core Guidelines and modernisation.
cppcheck
A free static analyser focused on real bugs with few false positives; has MISRA add-ons.
GoogleTest
Google's C++ unit testing and mocking framework.
Catch2
A modern, expressive test framework with natural assertions and BDD sections.
doctest
A super-light, fast-compiling test framework; tests can live next to the code.
Google Benchmark
Microbenchmarking library that measures code reliably.
ABI Compatibility
Whether binaries compiled separately can work together — sensitive to compiler, standard library and class layout changes.
Spotted a mistake or want to add detail? Suggest an improvement — Content Contributors' edits are reviewed by editors before they go live.
Discussion (0)
Sign in or join free to ask questions and discuss this topic.