Une option, qui s'applique à GNU make et fonctionne avec n'importe quel Makefile, qu'il soit généré par CMake ou non, consiste à utiliser le --trace
option à faire. Cela imprimera les commandes make
est en cours d'exécution et continue de les exécuter.
Cela s'applique à toutes les commandes, pas seulement à celles qui VERBOSE=1
ou V=1
déclenche l'impression des makefiles générés par CMake/automake.
Et encore une autre alternative sous Linux est d'exécuter make sous strace, comme strace -f -e trace=execve make <make options>
. La sortie de strace inclura chaque processus qui est exécuté :par make, par un script shell qui make run, etc.
Par exemple, vous pouvez constater que le makefile généré par CMake exécute /usr/bin/cmake -E __run_co_compile <lots of options ...>
et je me demande toujours quelles sont les invocations exactes du compilateur que cela exécutera à son tour. Vous pouvez l'obtenir avec la méthode strace.
Je suis à peu près sûr que cela fonctionnera :
make VERBOSE=1
Vous devriez également pouvoir ajouter ceci à votre CMakeLists.txt pour définir de manière permanente :
set(CMAKE_VERBOSE_MAKEFILE on)
Ceci est couvert dans la FAQ de CMake.
Pour les Makefiles générés par automake, essayez :
make V=1