Für jedes Ziel in Ihrem Projekt (für CMake-, Makefile- und Gradle-Projekten) generiert CLion eine Konfiguration. Diese kann erstellt und ausgeführt werden und ermöglicht Ihnen zudem die Konfiguration externer Tools, die vor/nach der Erstellungsphase in einem separaten UI-Dialog ausgeführt werden.
Verwenden Sie die Konfigurations-Templates, um Konfigurationen für Unit-Tests, Debugging per Fernzugriff oder das reguläre Ausführen von Anwendungen zu erstellen.
Sie können die Programmdatei jeder Konfiguration Ihrer Wahl ändern oder sogar die Ausführung einer Konfiguration verhindern, indem Sie diesen Wert auf „Not selected" setzen.
Erstellen Sie Ihr Projekt, indem Sie Strg+F9 drücken und führen Sie die aktuell gewählte Konfiguration aus, indem Sie Shift+F10 drücken.
Um das Debugging auszuführen, drücken Sie Shift+F9.
CLion bietet Ihnen zahlreiche hilfreiche Tastenkürzel wie „Step over/into“ (F8/F7), „Step out“ (Shift+F8) oder „Run to cursor“ (Alt+F9), um Ihnen während des Debugging-Vorgangs bei der Statusinspektion Ihres Codes behilflich zu sein.
Mit vom Build-System unabhängigen Build-Zielen können Sie benutzerdefinierte Ziele hinzufügen und alle Tools konfigurieren, die zum Erstellen oder Bereinigen des Ziels verwendet werden sollen.
Erstellen Sie zum Ausführen und Debuggen von benutzerdefinierten Zielen in CLion eine entsprechende Run/Debug-Konfiguration mithilfe des benutzerdefinierten Build-Anwendungstemplates.
Wenn Sie mit CMake- oder Kompilationsdatenbankprojekten arbeiten, kann die Funktion „Recompile“ (Shift+Strg+F9) dazu verwendet werden, Ihre Entwicklungszyklen in CLion zu beschleunigen. Diese Funktion führt die Kompilation einer ausgewählten Datei erneut durch, ohne die Rekompilierung des gesamten Projekts auszulösen.
Bei Verwendung von CMake, können Sie die Umschaltmöglichkeit der Run-Konfiguration in der Symbolleiste oder im Popup-Fenster der Run (Shift+Alt+F10)/Debug (Shift+Alt+F9)-Konfiguration verwenden, um zwischen den CMake-Profilen (und Build-Typen) zu wechseln.
CLion verwendet PTY als I/O-Einheit, was bedeutet, dass Sie ein Verhalten erwarten können, das dem Ausführen Ihres Projekts in einem Terminal oder sogar unter Windows ähnelt.
CLion lässt sich mit dem GDB-Backend auf allen Platformen und mit LLDB unter macOS und Linux integrieren.
Mit CLion können Sie Prozesse debuggen, die auf dem lokalen oder einem Remote-System ausgeführt werden, aber nicht aus der IDE gestartet wurden, indem Sie den Debugger anhand der PID oder des Prozessnamens an diese Prozesse anhängen. Dadurch können Sie die integrierte Debugging-Oberfläche von CLion nutzen.
CLion umfasst einen integrierten Debugger, der Ihnen dabei hilft, die Ausführung Ihres Codes zu inspizieren. Sie können in CLion zwischen verschiedenen Haltepunkten wählen (alle Haltepunkte können in einem separaten Dialogfenster überprüft werden (mittels Tastenkürzel Strg+Shift+F8):
Mit der Aktion Set Execution Point to Cursor können Sie beim Debuggen den Ausführungspunkt Ihres Programms hin und her verschieben, einen anderen Zweig in einem if-else
- oder switch-case
-Konstrukt auswählen oder Schleifen unterbrechen, neu starten oder ganz überspringen. Sie müssen dazu nur einen Pfeil in der Randleiste zur gewünschten Zeile ziehen.
Die Beschreibung aller verfügbaren Variablen, einschließlich STL-Containerinhalten, wird in der Registerkarte „Variables“ im Debugging-Toolfenster platziert. Dort können Sie sämtliche Werte betrachten und sogar ändern, ohne die aktuelle Debugging-Sitzung zu unterbrechen:
Über die Registerkarte GDB/LLDB haben Sie Zugang zur GDB/LLDB-Konsole. Die Ansichten „Frame" und „Watches“ (Beobachtungen) lassen Sie Problem genauer untersuchen. Bei der Auswahl eines zu beobachtenden Symbols profitieren Sie außerdem von der automatischen Vervollständigung.
Zusätzlich können Sie während einer Debugging-Sitzung jeden Ausdruck evaluieren, indem Sie Alt+F8 drücken.
Diese Funktion ermöglicht Ihnen, aktuelle Werte von Variablen direkt im Editor (neben der Deklaration der Variablen) einzusehen. Es ist nicht nötig, zur Registerkarte „Variables“ im Debugging- Toolfenster zu wechseln!
Sie können den Assembly-Code, dessen Syntax im Editor korrekt eingefärbt ist, untersuchen und schrittweise ausführen, um dem Problem auf den Grund zu gehen.
Beim Durchlaufen von Assembly-Code können Sie Haltepunkte an Anweisungszeilen hinzufügen/entfernen. Für eine von der Standardkonfiguration abweichende Konfiguration dieser Adresshaltepunkte verwenden Sie das Rechtsklick-Kontextmenü.
Unterstützt für GDB und LLDB.
In der Memory-Ansicht wird im Debugmodus der Speicher hinter dem Zeiger ausgelesen. Wählen Sie zum Aufrufen eine Zeigervariable in der Variablenansicht des Debuggers aus und drücken Sie Strg+Eingabe.
Wenn Sie die Memory-Ansicht während des schrittweise Debuggens geöffnet haben, hebt CLion die Speicheränderungen hervor, die in dem ausgewählten Speicherelement stattfinden.
Sie können aus der Memory-Ansicht zu einer bestimmten Adresse im Speicher navigieren. Verwenden Sie eine Zeigervariable oder einen Hexadezimalwert, der eine Adresse darstellt, oder springen Sie zur Adresse (&
) einer beliebigen Variablen, an der Sie interessiert sind.
Die Codevervollständigung hilft Ihnen mit den bekannten Symbolen.
Mit CLion können Sie Ihre Anwendung mit Root-Rechten ausführen und debuggen. Dazu müssen Sie nur die entsprechende Option in der Run/Debug-Konfiguration auswählen. Dies funktioniert für CMake-, Makefile-, Gradle-Native-, Custom-Build- und CTest-Anwendungen.
Mit der Aktion Run | Open Core Dump… können Sie den gespeicherten Core-Dump eines abgestürzten Prozesses in CLion öffnen und debuggen. Sie können die Frames- und Variablenansicht nutzen, die Memory- und Disassembly-Ansicht analysieren, Ausdrücke auswerten und Debugger-Befehle in der Debugger-Konsole ausführen.
Beim Debuggen von Multithread-Anwendungen müssen Sie mehrere Threads gleichzeitig im Blick behalten. Die Parallel Stacks-Ansicht ist als separater Tab im Debug-Toolfenster implementiert und zeigt die Aufrufliste für alle Threads an. Dadurch können Sie die Aufrufpfade und Ausführungspunkte aller laufenden Threads überprüfen.
Beim Debuggen kann es vorkommen, dass Bibliothekssymbole nicht auf Ihrem lokalen System verfügbar sind. In diesem Fall können Sie einen Symbolserver verwenden, also einen Dateiserver, der Ihre Debugsymbole zentral auf einem Server statt auf den einzelnen Entwicklersystemen speichert. Wenn Sie CLion unter Windows verwenden, können Sie jetzt Symbolserver für den Debugger unter Settings | Build, Execution, Deployment | Debugger | Symbol Servers konfigurieren.