这里是 clang 和 clang-tidy 的新手。
我有一个具有这种结构的项目:
project/
- build/
- cmake/
- component1/
- src/
- someFile.cpp
- someFile2.cpp
- someFile.hpp
- someFile2.hpp
- component2/
- etc...
-
当我使用 clang-tidy 浏览所有文件时project/component1/
用这个命令:clang-tidy project/component1/src/* -checks=-*,clang-analyzer-*,-clang-analyzer-alpha*
它最终会抛出这样的错误:
$HOME/project/component1/src/someFile.cpp:18:10: error: 'project/component1/someFile.hpp' file not found [clang-diagnostic-error]
\#include "component1/someFile.hpp"
我告诉 clang-tidy 使用普通编译器包含来搜索它们,但它们必须在双破折号 (--) 之后引入。我也花了一段时间才发现它,因为它不包含在--help
:
clang-tidy -checks='...' <source0> ... -- -Iblabla/ ...
阅读选项,你可以尝试-extra-arg=
参数,但我使用双破折号近似值,因为它允许我将所有选项放在一个文件中,以提供 clang 和 clang-tidy ,而不需要比$(cat $file)
对彼此而言。
From: https://clang.llvm.org/extra/clang-tidy/#using-clang-tidy https://clang.llvm.org/extra/clang-tidy/#using-clang-tidy
clang-tidy 是一个基于 LibTooling 的工具。您还可以在命令行上指定编译选项--
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)