Build Tools
CMake
A cross-platform build-system generator used to configure and build C and C++ projects.
Problem it solves
Why it exists.
It standardizes native build configuration across compilers and environments.
Optimized for
Where it shines.
Portable C and C++ projects that need reproducible local and CI builds.
Use with care
Where not to use it.
Do not let build configuration become undocumented or environment-specific.
Components
What it is made of.
- CMakeLists.txt
- Targets
- Generators
- Toolchains
- CTest
Process
How it works.
- Project files declare targets
- CMake configures a build directory
- A generator creates native build files
- The compiler builds and tests the targets