from Wikipedia, the free encyclopedia

Logo from CMake
Basic data

developer Bill Hoffman, Ken Martin, Brad King,
Dave Cole, Alexander Neundorf, Clinton Stimpson
Publishing year 2000
Current  version 3.18.2
( August 20, 2020 )
operating system Unix derivatives ( Linux , macOS ), Windows
programming language C ++
category Programming tool
License BSD-style license
German speaking No

CMake ( cross-platform make ) is a platform-independent programming tool for developing and creating software .


CMake was created as part of the Visible Human Project for the Insight Segmentation and Registration Toolkit .

Bill Hoffman from Kitware used new and own ideas from the pcmaker (a previous build system) with basic functionality of the GNU build system to create the first version in mid-2000, which was then developed further until early 2001. After that, many improvements were made by other developers who wanted to use CMake for their own projects.


With CMake, script files (CMakeLists.txt) are used to generate makefiles and projects for many integrated development environments and compilers .

Get supported:

as well as the successors of Mingw and MSYS, Mingw-w64 and MSYS2 .

CMake automatically checks the dependencies for C , C ++ , Fortran and Java and supports parallel builds.

There are many libraries such as B. SWIG , Boost and Qt supported by the CMake scripting language. As of version 2.6, cross compilation and cross-platform build are also supported. Tools for tests and release are integrated: DART, CDash, CTest and CPack.

With CPack it is possible to create installation packages in the following formats:

Well-known application examples

CMake users include:


Individual evidence

  1. CMake Participants
  2. Robert Maynard: CMake 3.18.2 available for download . August 20, 2020 (accessed August 21, 2020).
  3. ^ Ohloh Analysis Summary - CMake . Oh oh Retrieved December 25, 2009.
  4. Why the KDE project switched to CMake - and how (continued)