CMake Reference Documentation
Introduction
CMake is a tool to manage building of source code. Originally, CMake was designed as a generator for various dialects of Makefile
, today CMake generates modern buildsystems such as Ninja
as well as project files for IDEs such as Visual Studio and Xcode.
CMake is widely used for the C and C++ languages, but it may be used to build source code of other languages too.
People encountering CMake for the first time may have different initial goals. To learn how to build a source code package downloaded from the internet, start with the User Interaction Guide
. This will detail the steps needed to run the cmake(1)
or cmake-gui(1)
executable and how to choose a generator, and how to complete the build.
The Using Dependencies Guide
is aimed at developers wishing to get started using a third-party library.
For developers starting a project using CMake, the CMake Tutorial
is a suitable starting point. The cmake-buildsystem(7)
manual is aimed at developers expanding their knowledge of maintaining a buildsystem and becoming familiar with the build targets that can be represented in CMake. The cmake-packages(7)
manual explains how to create packages which can easily be consumed by third-party CMake-based buildsystems.
Command-Line Tools
Interactive Dialogs
Reference Manuals
- cmake-buildsystem(7)
- cmake-commands(7)
- cmake-compile-features(7)
- cmake-developer(7)
- cmake-env-variables(7)
- cmake-file-api(7)
- cmake-generator-expressions(7)
- cmake-generators(7)
- cmake-language(7)
- cmake-modules(7)
- cmake-packages(7)
- cmake-policies(7)
- cmake-presets(7)
- cmake-properties(7)
- cmake-qt(7)
- cmake-server(7)
- cmake-toolchains(7)
- cmake-variables(7)
- cpack-generators(7)
Guides
- CMake Tutorial
- User Interaction Guide
- Using Dependencies Guide
- Importing and Exporting Guide
- IDE Integration Guide
© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.21/