在Windows上配置VSCode来开发C++时,发现总是没有生成compile_commands.json,即使在CMakeLists.txt里set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
也不行。但是Visual Studio倒是生成了这个文件,真的很怪。
找了一下网上的答案,发现真就是Generator的问题(受到zr.在问题How to use CMAKE_EXPORT_COMPILE_COMMANDS? 中的回答的启发)。Visual Studio是用的Ninja,而VSCode默认用的是Visual Studio Generator。所以需要在插件配置里把CMake默认生成器改成Ninja才行。