我正在尝试实现我的小自定义检查,例如尝试遍历this tutorial(有点过时)。我有几个问题:
感谢您的转发帮助!
6rqinv9w1#
好吧,而不是使用一个教程,你承认是过时的,如何使用教程的一部分,官方文档?https://clang.llvm.org/extra/clang-tidy/Contributing.html#writing-a-clang-tidy-check我应该运行什么,对文件或项目执行检查器。使用适当的参数运行clang-tidy可执行文件(有关详细信息,请参阅上述文档)
$ clang-tidy test.cpp -checks=-*,your-custom-check-name
字符串-*禁用所有默认检查,因此这将只运行您的自定义检查。
-*
mfuanj7w2#
我已经解决了构建目标问题**,即缺少check-clang-tools目标。在cmake文件结构中,在llvm/tools/clang/tools级别上,在CMakeLists.txt中缺少一行,我必须添加:add_clang_subdirectory(clang-tools-extra)
llvm/tools/clang/tools
CMakeLists.txt
add_clang_subdirectory(clang-tools-extra)
1.确保将somedir/llvm/build/bin添加到PATH1.那么你需要执行llvm/tools/clang/tools/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py fileyouwanttocheck.cpp -checks='-*,your-check'个或llvm/tools/clang/tools/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py project_folder_you_want_to_check -checks='-*,your-check'个
somedir/llvm/build/bin
PATH
llvm/tools/clang/tools/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py fileyouwanttocheck.cpp -checks='-*,your-check'
llvm/tools/clang/tools/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py project_folder_you_want_to_check -checks='-*,your-check'
dfddblmv3#
我知道这个问题已经很老了,但我刚刚遇到了同样的问题,并想发布我的修复:1.导航到build_ninja目录。1.运行cmake -DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra -GNinja ..\llvm(这将指示cmake构建clang和clang-tools-extra)1.运行ninja check-clang-tools(运行clang-tools-extra的所有测试)
build_ninja
cmake -DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra -GNinja ..\llvm
cmake
clang
clang-tools-extra
ninja check-clang-tools
3条答案
按热度按时间6rqinv9w1#
好吧,而不是使用一个教程,你承认是过时的,如何使用教程的一部分,官方文档?
https://clang.llvm.org/extra/clang-tidy/Contributing.html#writing-a-clang-tidy-check
我应该运行什么,对文件或项目执行检查器。
使用适当的参数运行clang-tidy可执行文件(有关详细信息,请参阅上述文档)
字符串
-*
禁用所有默认检查,因此这将只运行您的自定义检查。mfuanj7w2#
我已经解决了构建目标问题**,即缺少check-clang-tools目标。在cmake文件结构中,在
llvm/tools/clang/tools
级别上,在CMakeLists.txt
中缺少一行,我必须添加:add_clang_subdirectory(clang-tools-extra)
1.确保将
somedir/llvm/build/bin
添加到PATH
1.那么你需要执行
llvm/tools/clang/tools/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py fileyouwanttocheck.cpp -checks='-*,your-check'
个或
llvm/tools/clang/tools/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py project_folder_you_want_to_check -checks='-*,your-check'
个dfddblmv3#
我知道这个问题已经很老了,但我刚刚遇到了同样的问题,并想发布我的修复:
1.导航到
build_ninja
目录。1.运行
cmake -DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra -GNinja ..\llvm
(这将指示cmake
构建clang
和clang-tools-extra
)1.运行
ninja check-clang-tools
(运行clang-tools-extra
的所有测试)