Eine Option, die für GNU make gilt und mit jedem Makefile funktioniert, ob von CMake generiert oder nicht, ist die Verwendung von --trace Möglichkeit zu machen. Dadurch werden die Befehle make ausgegeben ausführt und noch ausführt.
Dies gilt für alle Befehle, nicht nur für die VERBOSE=1 oder V=1 löst das Drucken von in CMake/automake generierten Makefiles aus.
Eine weitere Alternative unter Linux ist die Ausführung von make unter strace als strace -f -e trace=execve make <make options> . Die Ausgabe von strace enthält every Prozess, der ausgeführt wird:von make, von einem Shell-Skript, das make ausgeführt hat, usw.
Beispielsweise stellen Sie möglicherweise fest, dass das von CMake generierte Makefile /usr/bin/cmake -E __run_co_compile <lots of options ...> ausführt und frage mich immer noch, was die genauen Compiler-Aufrufe sind, die dieser wiederum ausführen wird. Das bekommst du mit der strace-Methode.
Ich bin mir ziemlich sicher, dass das funktionieren wird:
make VERBOSE=1
Sie sollten dies auch zu Ihrer CMakeLists.txt hinzufügen können, um Folgendes dauerhaft festzulegen:
set(CMAKE_VERBOSE_MAKEFILE on)
Dies wird in den häufig gestellten Fragen zu CMake behandelt.
Versuchen Sie für automatisch erstellte Makefiles:
make V=1