CMake

CMake (cross-platform make) ist ein plattformunabhängiges Programmierwerkzeug für die Entwicklung und Erstellung von Software.

CMake
Basisdaten
Entwickler Bill Hoffman, Ken Martin, Brad King,
Dave Cole, Alexander Neundorf, Clinton Stimpson[1]
Erscheinungsjahr 2000[2]
Aktuelle Version 3.21.0-rc3[3][4]
(8. Juli 2021)
Betriebssystem Unix-Derivate (Linux, macOS), Windows
Programmiersprache C++[5]
Kategorie Programmierwerkzeug
Lizenz BSD-artige Lizenz
deutschsprachig nein
cmake.org

Geschichte

CMake wurde als Teil des Visible Human Project für das Insight Segmentation and Registration Toolkit erstellt.

Bill Hoffman von Kitware nutzte neue und eigene Ideen vom pcmaker (einem vorherigen Buildsystem) mit Grundfunktionalitäten des GNU Build Systems, um Mitte 2000 die erste Version zu erstellen, die dann bis Anfang 2001 weiterentwickelt wurde. Danach entstanden viele Verbesserungen durch andere Entwickler, die CMake für ihre eigenen Projekte verwenden wollten.

Funktionen

Mit CMake werden aus Skriptdateien (CMakeLists.txt) Makefiles und Projekte für viele integrierte Entwicklungsumgebungen und Compiler erzeugt.

Unterstützt werden:

sowie die Nachfolger von Mingw und MSYS, Mingw-w64 und MSYS2.

CMake überprüft dabei automatisch die Abhängigkeiten für C, C++, Fortran und Java und unterstützt parallele Builds.

Es werden viele Bibliotheken, wie z. B. SWIG, Boost und Qt durch die CMake-Skriptsprache unterstützt. Ab der Version 2.6 wird auch Cross Kompilation und cross-platform build unterstützt. Integriert sind Tools für Tests und release: DART, CDash, CTest und CPack.

Mit CPack ist es möglich, Installationspakete in folgenden Formaten zu erstellen:

Bekannte Anwendungsbeispiele

Zu den Anwendern von CMake gehören:

Alternativen

Einzelnachweise

  1. www.cmake.org CMake Participants
  2. About CMake. (englisch, abgerufen am 10. Oktober 2019).
  3. CMake 3.21.0-rc3 is ready for testing. 8. Juli 2021.
  4. gitlab.kitware.com.
  5. Ohloh Analysis Summary – CMake. Ohloh. Abgerufen am 25. Dezember 2009.
  6. Why the KDE project switched to CMake -- and how (continued)
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.