2014-04-02 9 views

Antwort

31

Es gibt keinen interaktiven Debugger für CMake, aber es gibt auch die Flags -Wdev, --debug-output und --trace, die helfen könnten. Denken Sie auch daran, die Protokolldateien zu überprüfen.

Since version 3.7, CMake unterstützt jetzt offiziell einen "Server-Modus", so dass sich die Integration in IDEs in naher Zukunft wahrscheinlich verbessern wird. Erste Unterstützung existiert sowohl in Qt Creator als auch in Visual Studio 2017 RC

+0

Welchen verwenden wir, um 'if' Anweisungen in' CmakeList.txt' zu debuggen? 'came --debug ...' und 'cmake --debug-output ...' drucken sie nicht. In Bash ist das Äquivalent "bash -x ". – jww

+0

@jww Ich bin nicht 100% sicher, was Sie versuchen zu debuggen, aber die Ausgabe von '--trace' ist in der Regel sehr umfangreich (die Ausgabe in eine Datei umleiten!) – Joe

+0

Ich habe versucht, das Skript zu debuggen und zu verstehen, warum bestimmte Codeblöcke wurden nicht eingegeben. Aber ich habe das Problem gefunden: 'string (STRIP ...)' war kaputt. Siehe auch [So entfernen Sie einen abschließenden Zeilenumbruch in der Cmake-Variablen?] (Http://stackoverflow.com/q/39496043/). Ich entschuldige mich, wenn Sie nicht wüssten, was 'bash -x' tut. – jww

4

Es gibt steveire CMake Daemon Tools. Ich habe sie nicht selbst benutzt, aber sie behaupten, Möglichkeiten zur Introspektion anzubieten, die einem Debugger sehr nahe kommen.

Bearbeiten: Sie heißen jetzt CMake-server und sind Teil von CMake 3.7.