CMake
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.org |
CMake ( cross-platform make ) is a platform-independent programming tool for developing and creating software .
history
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.
Functions
With CMake, script files (CMakeLists.txt) are used to generate makefiles and projects for many integrated development environments and compilers .
Get supported:
- Borland Makefiles
- Code :: Blocks
- MinGW / Unix Makefiles
- Eclipse CDT4 MinGW / Nmake / Unix Makefiles
- MinGW / MSYS / Nmake / Unix Makefiles
- Ninja
- Visual studio
- Watcom WMake files
- Xcode
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:
- Nullsoft Scriptable Install System (NSIS)
- Windows Installer XML (MSI)
- Self extracting Tar GZip compression (STGZ)
- Tar bzip2 compression (TBZ2)
- Tar gzip compression (TGZ)
- Tar Compress compression (TZ)
- ZIP file format (ZIP)
- Debian packages (DEB)
- RPM Package Manager (RPM)
Well-known application examples
CMake users include:
|
Alternatives
- GNU Build System (Autotools)
- SCons
- qmake
- Perforce Jam
Individual evidence
- ↑ www.cmake.org CMake Participants
- ↑ Robert Maynard: CMake 3.18.2 available for download . August 20, 2020 (accessed August 21, 2020).
- ^ Ohloh Analysis Summary - CMake . Oh oh Retrieved December 25, 2009.
- ↑ Why the KDE project switched to CMake - and how (continued)