Clang-Tidy がヘッダーファイルを見つけられない 質問する

Clang-Tidy がヘッダーファイルを見つけられない 質問する

clang と clang-tidy を初めて使用します。

次のような構造のプロジェクトがあります: project/ - build/ - cmake/ - component1/ - src/ - someFile.cpp - someFile2.cpp - someFile.hpp - someFile2.hpp - component2/ - etc... -

project/component1/clang-tidy を使用して、次のコマンドですべてのファイルを確認します。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"

ベストアンサー1

私は clang-tidy に、プレーンなコンパイラ インクルードを使用してそれらを検索するように指示しますが、それらは二重ダッシュ (--) の後に導入する必要があります。また、次の場所には含まれていないため、それを発見するのにしばらく時間がかかりました--help

clang-tidy -checks='...' <source0> ... -- -Iblabla/ ...

オプションをもう一度読んでみると、-extra-arg=パラメータを試すことができますが、私は二重ダッシュのアプローチを使用します。これにより、clang と clang-tidy に与えるすべてのオプションを 1 つのファイルにまとめることができ、両方の場合よりも多くの処理は必要ありません$(cat $file)


から:https://clang.llvm.org/extra/clang-tidy/#using-clang-tidy

clang-tidy は LibTooling ベースのツールです。コマンドラインで -- の後にコンパイルオプションを指定することもできます。

おすすめ記事