find_package Using CMake with GNU Make: How can I see the exact commands?
I was trying something similar to ensure the
-ggdb flag was present.
Call make in a clean directory and grep the flag you are looking for. Looking for
debug rather than
ggdb I would just write.
make VERBOSE=1 | grep debug
-ggdb flag was obscure enough that only the compile commands popped up.
I use CMake with GNU Make and would like to see all commands exactly (for example how the compiler is executed, all the flags etc.).
GNU make has
--debug, but it does not seem to be that helpful are there any other options? Does CMake provide additional flags in the generated Makefile for debugging purpose?
If you use the CMake GUI then swap to the advanced view and then the option is called CMAKE_VERBOSE_MAKEFILE.
Or simply export VERBOSE environment variable on the shell like this:
When you run make, add
VERBOSE=1 to see the full command output. For example:
cmake . make VERBOSE=1
Or you can add
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON to the cmake command for permanent verbose command output from the generated Makefiles.
cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON . make
To reduce some possibly less-interesting output you might like to use the following options. The option
CMAKE_RULE_MESSAGES=OFF removes lines like [ 33%] Building C object..., while
--no-print-directory tells make to not print out the current directory filtering out lines like
make: Entering directory and
make: Leaving directory.
cmake -DCMAKE_RULE_MESSAGES:BOOL=OFF -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON . make --no-print-directory