Самый простой способ - использовать --trace
или --trace-expand
флаги.Оба они заставляют cmake
печатать каждую строку, которую он выполняет, в stderr.Для --trace
он печатает строки по мере их чтения 1 , для --trace-expand
все переменные раскрываются первыми.
Я обычно заканчиваю вызовом перенаправления stderr в cmake.log
файл:
cmake . --trace-expand 2> cmake.log
Если вывод слишком длинный 2 для ваших нужд, вы можете попытаться уменьшить его с помощью --trace-source=<file>
.Выписка из --help
: Trace only this CMake file/module. Multiple options allowed.
1 Кавычки ""
иногда теряются.
2 Это действительно долго ..Первый проход по почти пустому проекту дает 14k + строк журнала.Последовательные звонки только 500+.В CMake Guts происходит много всего.