CMake

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
CMake
Logo von CMake
Entwickler Bill Hoffman, Ken Martin, Brad King,
Dave Cole, Alexander Neundorf, Clinton Stimpson[1]
Aktuelle Version 3.5.1[2]
(24. März 2016)
Betriebssystem Unix-Derivate (Linux, Mac OS X), Windows
Programmier­sprache C++[3]
Kategorie Programmierwerkzeug
Lizenz BSD-artige Lizenz
Deutschsprachig nein
www.cmake.org

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

Geschichte[Bearbeiten | Quelltext bearbeiten]

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[Bearbeiten | Quelltext bearbeiten]

Mit CMake werden aus Skriptdateien (CMakeLists.txt) Makefiles und Projekte für viele integrierte Entwicklungsumgebungen und Compiler erzeugt. Unterstützt werden Borland Makefiles, CodeBlocks, MinGW/Unix Makefiles, Eclipse CDT4 MinGW/Nmake/Unix Makefiles, MinGW/MSYS/Nmake/Unix Makefiles, Visual Studio 6-10 32/64-Bit, Watcom WMake Dateien sowie Xcode. 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. Seit 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[Bearbeiten | Quelltext bearbeiten]

Zu den Anwendern von CMake gehören das KDE-Projekt (ab Version 4, vorher Autotools)[4], Visualization Toolkit, Insight Segmentation and Registration Toolkit, Scribus (seit Version 1.34 vorher Autotools), Second Life (seit Version 1.21 vorher SCons), Point Cloud Library, OpenCV, Robot Operating System, OpenSceneGraph, KiCad, QGIS, FlightGear, OGRE, Avidemux, SuperTux, ReactOS, MySQL, Stellarium, Blender, LLVM und LMMS.

Alternativen[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. www.cmake.org CMake Participants
  2. Robert Maynard: CMake 3.5.1 available for download. blog.kitware.com, 24. März 2016, abgerufen am 29. März 2016 (englisch).
  3. Ohloh Analysis Summary - CMake. Ohloh. Abgerufen am 25. Dezember 2009.
  4. Why the KDE project switched to CMake -- and how (continued)