如何在Visual Studio和CMake中使用clang-tidy?

时间:2019-11-30 18:01:22

标签: visual-studio cmake clang-tidy

我的最终目标是对某些代码进行一次性的自动现代化,并应用以.clang-tidy表示的标识符大写规则。随着时间的推移能够重复执行此操作会很好。我们使用Visual Studio 2015,CMake 3.13,并且我已经安装LLVM 9以获得整洁的声音。

我可以在命令行或从CMake或Visual Studio中运行clang-tidy,但我需要任何帮助。

要在命令行上运行,我需要CMake的compile_commands.json文件,但是传递-DCMAKE_EXPORT_COMPILE_COMMANDS = ON不会创建一个。我听说这不适用于CMake Visual Studio生成器。我尝试使用“ cmake .. -G Ninja”生成Ninja生成器,但出现错误。我对忍者并不熟悉,也不知道它是否可以正常工作。我也不知道如果我真的用Visual Studio 2015构建的话,它生成的compile_commands.json文件是否有意义。在我的平台上生成此文件的最可接受的方法是什么?

我可以访问Visual Studio 2019 16.4,它具有内置的clang-tidy支持,但是博客上说这不适用于修复程序,这是我的主要目标。

1 个答案:

答案 0 :(得分:0)

我这样做的方法是通过Clang Power Tools-这是Visual Studio的扩展,它集成了clang-tidy并可以应用修复程序。

由于它提供了基本的clang编译(只是语法,没有输出),因此它还帮助我通过clang编译了我的代码库(clang-tidy的必要前提)。