CMAKE_EXPORT_COMPILE_COMMANDS
Добавлено в версии 3.5.
Включить/отключить вывод команд компиляции при генерации.
Если этот параметр включен, создается файл compile_commands.json, содержащий точные вызовы компилятора для всех единиц трансляции проекта в машиночитаемом формате. Формат JSON-файла выглядит следующим образом:
[
{
"directory": "/home/user/development/project",
"command": "/usr/bin/c++ ... -c ../foo/foo.cc",
"file": "../foo/foo.cc",
"output": "../foo.dir/foo.cc.o"
},
...
{
"directory": "/home/user/development/project",
"command": "/usr/bin/c++ ... -c ../foo/bar.cc",
"file": "../foo/bar.cc",
"output": "../foo.dir/bar.cc.o"
}
]
Начальное значение задается переменной среды CMAKE_EXPORT_COMPILE_COMMANDS; эта переменная задает начальное значение свойства цели EXPORT_COMPILE_COMMANDS для всех целей.
Примечание
Этот параметр реализован только для генераторов Makefile и генераторов Ninja. Для других генераторов он игнорируется.
В настоящее время этот параметр работает некорректно в сочетании со свойством цели UNITY_BUILD или переменной CMAKE_UNITY_BUILD.
© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/variable/CMAKE_EXPORT_COMPILE_COMMANDS.html