Programmierung

Ein einfaches CMake Beispiel mit C++

In diesem Post möchte ich ein sehr einfaches Beispiel zeigen, wie man ein C++-Projekt mit Hilfe von CMake und dem GNU Compiler bauen kann. Ich habe den Eindruck, dass es nur wenig gute Beispiele im Internet gibt, daher will ich in nächster Zeit einige Posts schreiben zu dem Thema CMake.

In diesem Beispiel nutze ich ein Ubuntu-Ableger und CMake mit der Version 2.8. Aber ich denke, dass dieses Beispiel auch für andere Versionen gültig sein sollte.

Für dieses Beispiel wird zunächst eine C++-Quelltextdatei benötigt, hello.cpp:

include <iostream>
 
int main(int argc, char **argv)
{
    std::cout << "Hallo, Welt!" << std::endl;
    return 0;
}

Und es wird eine Datei namen CMakeLists.txt benötigt. Die Datei muss auch so geschrieben werden (also auch Groß- und Kleinschreibung beachten):

cmake_minimum_required(VERSION 2.8)
project(SimpleCPP)

set(SOURCE_FILES hello.cpp)

add_executable(simpleHello ${SOURCE_FILES})

Für dieses Beispiel müssen die Datei hello.cpp und CMakeLists.txt im selben Ordner liegen.

Kurze Beschreibung der CMake-Befehle

CMAKE_MINIMUM_REQUIRED

Der Befehl (kann man in diesem Fall Befehl sagen?) CMAKE_MINIMUM_REQUIRED setzt die Mindestversion, die von CMake benötigt wird, um die entsprechenden Builddateien von CMake zu erstellen. Dieser Befehl macht Sinn, wenn man eine Funktion benutzt, die erst in einer neueren Version verfügbar ist.

PROJECT

Dieser Befehl setzt den Namen des Projektes.

SET

set weißt einer Variablen (in meinem oberen Beispiel heißt die Variable SOURCE_FILES) einen bestimmten Wert zu, hier also hello.cpp.

ADD_EXECUTABLE

Dieser Befehl macht zwei Dinge. Zum einen erstellt er ein sogenanntes Ziel (Target), zum anderen wird dem Ziel gesagt, was zu diesem Ziel alles mit rein muss (hier: die Quelldatei(en), also hello.cpp).

CMake laufen lassen

Sobald ich also mein CMakeLists.txt geschrieben habe, kann ich CMake und den GNU Compiler laufen lassen. Die folgenden Befehle gebe ich also in die Kommandozeile ein, nachdem ich in den Ordner gewechselt bin, in dem hello.cpp und CMakeLists.txt liegen:

cmake -G „Unix Makefiles“ .
make

Ein Gedanke zu „Ein einfaches CMake Beispiel mit C++

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.