CMake-Unterstützung

CMake ist nach wie vor das Projektmodell, das am besten in CLion integriert ist.

CMake-Projekt

CMake-Projekt öffnen

Auf CMake basierende Projekte können ohne weitere Konfiguration problemlos in CLion geöffnet werden:

  • verweisen Sie in Ihren Projekt-Quellen auf die Root-Datei CMakeLists.txt oder
  • verweisen Sie auf den existierenden Generierungs-Ordner oder die CMakeCache.txt-Dateien (nur mit Makefiles-Generator möglich).

Verzeichnis markieren als

Falls Sie Verzeichnisse manuell als Bibliotheken oder Projekt-Quellen/Header markieren oder einzelne Verzeichnisse ausschließen möchten (d. h. unabhängig von der CMake-Projektstruktur), können Sie dies mittels der Funktion Mark directory as realisieren. Dies hat einen Einfluss auf die Indexierung (beispielsweise können Sie Build-Verzeichnisse, Binärdateien, Protokolle und generierte Daten von der Indexierung ausschließen), die Codegenerierung, Refaktorierungen und die Navigation. Hier finden Sie weitere Einzelheiten.

CMake-Vervollständigung von Umgebungsvariablen

CLion erkennen

Wenn erkannt werden soll, ob der CMake-Befehl in Ihrem Projekt von CLion ausgeführt wurde (zum Beispiel um spezifische Variablen/Pfade einzurichten oder zusätzliche Skripte Ihrer Wahl auszuführen), nutzen Sie die Umgebungsvariable CLION_IDE. CLion vereinfacht Ihnen das Auffinden durch eine Vervollständigung der Umgebungsvariablen.

Dateien hinzufügen/entfernen

Wird eine neue Datei hinzugefügt, schlägt CLion vor, diese zum CMake-Ziel hinzuzufügen.

Werden Dateien aus dem Projekt gelöscht, entfernt CLion die Dateireferenz aus den Befehlsargumenten oder warnt Sie nach der Löschung vor einem möglicherweise fehlerhaften Befehl.

CMake-Projekt

Projekt importieren

Auch nicht mit CMake erstellte Projekte können importiert werden (File | Import Project...). CLion generiert für diese eine CMakeLists.txt-Datei.

CMake-Generatoren

Durch die Unterstützung der CMake-File-API kann CLion verschiedene CMake-Generatoren aktivieren. Die Benutzer können jetzt zum Beispiel Ninja, Xcode oder Visual Studio auswählen. Dies funktioniert auf allen Plattformen, auch im Remote-Modus und mit WSL.

Weitere Informationen

Konfiguration von CMake

CMake-Profile

CMake-Profile (Build, Execution, Deployment | CMake) ermöglichen Ihnen die Kontrolle über das CMake-Generierungsverzeichnis, die CMake-Konfigurationsarten, die Optionen und Umgebungsvariablen von CMake, etc.

Sie können so viele CMake-Profile wie nötig erstellen oder existierende kopieren (alle Einstellungen sind vorausgefüllt). Speichern Sie die Build-Konfiguration Ihres Projekts in neuen und universellen CMake-Presets. CLion erkennt und importiert automatisch die erforderlichen CMake-Presets in CMake-Profile.

Über die Umschaltmöglichkeit der Run-Konfiguration in der Symbolleiste oder im Popup-Fenster der Run- (Shift+Alt+F10) bzw. Debug-Konfiguration (Shift+Alt+F9) können Sie zwischen den CMake-Profilen wechseln.

CMake-Toolfenster und CMake-Cache

Das CMake-Toolfenster enthält die Ausgabeprotokolle von CMake. Anhand dieser können Sie den Fortschritt erfassen und CMake-Skripte debuggen.

Sie können CMake-Cache-Variablen einsehen und an den CMake-Befehl übergebene Optionen bearbeiten. Dazu steht Ihnen eine einheitliche tabellenbasierte Oberfläche in Settings | Build, Execution, Deployment | CMake zur Verfügung.

Wenn die Tabelle im Fokus ist, können Sie einfach Buchstaben eintippen, um nach einer Variablen oder einem Wert zu suchen. CLion zeigt für CMake-Cache-Variablen außerdem einen Tooltip mit einer Kurzbeschreibung an.

Das CMake-Menü

Nützliche Aktionen bezüglich CMake finden Sie unter Tools | CMake:

  • Reload CMake Project: Mit dieser Funktion werden die neuesten Änderungen in CMake übernommen. CLion lädt das Projekt zudem neu, wodurch die Änderungen im Editor sichtbar werden (automatisches Neuladen kann unter Build, Execution, Deployment | CMake aktiviert werden).
  • Change Project Root: Mit dieser Funktion ändern Sie das Stammverzeichnis des Projekts. Dies ist dann sinnvoll, wenn sich Ihr Projekt in einem anderen Verzeichnis befindet als die übergeordnete Datei CMakeLists.txt.
  • Reset Cache and Reload Project: Mit dieser Funktion können Sie den CMake-Cache zurücksetzen, ohne sämtliche IDE-Indizes und Caches zu entfernen.

Intelligente CMake-Unterstützung

CMake-Kommentare

Umbenennung in CMake

Wenn Sie für die Umbenennung von Benutzersymbolen (wie Funktionen oder Makros) in CMake die Refaktorierung „Rename“ (Shift+F6) verwenden, werden alle Verwendungen automatisch aktualisiert.

Installation von CMake

Wenn Ihr Projekt CMake-Installationsziele enthält, können Sie die Installation auch über das Ausführungsmenü in CLion starten. Der Befehl „cmake install“ wird ausgeführt. Alternativ können Sie Ihren Run-Konfigurationen in CLion einen Installationsschritt hinzufügen.

CMake-Kommentare

CMake-Kommentare

CLion unterstützt die CMake 3-Syntax für Argumente in Klammern und Blockkommentare. Um eine Zeile in CMake zu kommentieren, muss diese nicht ausgewählt werden. Bewegen Sie den Cursor einfach in die Zeile und drücken Sie Ctrl+/ . Um ein Blocksegment zu kommentieren, wählen Sie dieses aus und drücken Ctrl+Shift+/.

Programmierunterstützung in CMakeLists.txt

Mit dem CMake-Dateieditor in CLion können Sie CMakeLists.txt-Dateien unkomplizierter bearbeiten. Dies beinhaltet:

  • Schrift- und Farbeinstellungen für CMake.
  • Aus- und Einklappen verschiedener Coderegionen in CMake.
  • Code-Completion für CMake-Befehle und -Variablen.
  • Code-Completion für find_package bei Paketen, die mit CMake mitgeliefert wurden.
  • CMake-Befehlsdokumentation in der Code-Completion.
  • CMake-Strukturansicht.
  • Kennzeichnung von veralteten CMake-Befehlen durch Durchstreichen.
Vervollständigung, Codegenerierung und automatische Aktionen in CMake

Codegenerierung in CMake

Häufig eingesetzte oder benutzerdefinierte Code-Konstrukte können in CMake erstellt und mit Live-Vorlagen wiederverwendet werden. Wählen Sie eine der vordefinierten Vorlagen oder erstellen Sie Ihre eigene.

Um eine Vorlage zu verwenden, geben Sie deren Abkürzung ein (auch hier können Sie die automatische Vervollständigung nutzen) und drücken Sie anschließend die Tabulatortaste (oder eine andere Taste, die Sie konfiguriert haben), um die Vorlage einzufügen.

Nach Abschluss der Bearbeitung wird ein Banner angezeigt. Sie können wählen, ob das aktuelle Projekt manuell neu geladen wird, oder dies nach jeder Bearbeitung automatisch geschehen soll.

Schnelldokumentation für CMake

Schnelldokumentation für CMake

Das Schnelldokumentations-Popup ist jetzt auch in CMake-Skripten verfügbar. Die Dokumentation wird für die Standard-CMake-Entitäten angezeigt:

  • Befehle
  • Richtlinien
  • Module
  • Variablen
  • Eigenschaften

Die Dokumentation wird immer für die aktuell mitgelieferte CMake-Version bereitgestellt und steht für benutzerdefinierte Entitäten vorerst nicht zur Verfügung.

CMake-Debugging

CMake-Debugger

Da die CMake-Sprache für Buildsysteme konzipiert wurde, ist es nicht immer einfach, in einem CMake-Skript Fehlern auf den Grund zu gehen und verdächtiges Verhalten zu erkennen. Sie können CMake-Skripte in CLion wie normalen Code debuggen. Sie können Haltepunkte setzen, den Code schrittweise ausführen und CMake-Variablen und -Ziele überwachen. Mehr erfahren.

CMake-Profiling

CMake-Profiling

In CLion können Sie visuell überprüfen, warum das Neuladen Ihres CMake-Projekts so lange dauert. Ab CMake 3.18 kann das neue Tracing in den CMake-Einstellungen aktiviert werden. CLion hilft Ihnen, das Tracing durchzuführen und zeigt die Ergebnisse an. Mehr erfahren.