How to use CMAKE_EXPORT_COMPILE_COMMANDS?

dzada picture dzada · Nov 18, 2013 · Viewed 47.2k times · Source

I've been trying to use clang-modernize with CMAKE_EXPORT_COMPILE_COMMANDS as recommended in the help of this tool.

With this option cmake generates a JSON file containing compile info like include paths (see also).

This variable is accepted on the command line of cmake, but cmake --help-variable CMAKE_EXPORT_COMPILE_COMMANDS doesn't work (which is coherent with this mailing list posting).

Has someone any idea on how to use it?

I could also use it with cppcheck.

Some more info

I've discovered on a clang developer forum that this cmake feature is not available on all generators. This might change in the future, in the mean time my question remains and I will try too see what happen if I use other generators than Visual Studio.

Answer

Jörn Reimerdes picture Jörn Reimerdes · Aug 20, 2017

I suggest setting

set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

in the CMakeList.txt