私のプロジェクトはBazelからCMakeへと移行しており、Abseilというスナップショットを私たちのリポジトリ内の最上位ディレクトリthird_party/
にチェックインしています。私は、移行中に両方のビルドシステムをサポートする必要があるので、ファイルをCMakeLists.txt
作成し、Abseilヘッダーをコンパイルするためにはかなりの警告を無効にする必要があることに気付きました。Bazelヘッダーを含めるときに角 "<>"角括弧を許可する方法はありますか?
CMakeの場合は、#include <absl/strings/str_cat.h>
構文を使用してヘッダーを含めることができるので、これは問題ありません。これはコンパイラにシステムヘッダであることを伝え、警告を無視してグローバルに無効にする必要はありません。 Bazelについては
、しかし、私はこのエラーを取得する:
error: 'absl/strings/str_cat.h' file not found with include; use "quotes" instead
<>
スタイルが含まれて許可するようにBazelを伝える方法はありますか?これらのヘッダーの警告だけを無効にするもう1つの方法は、プロジェクト全体でも無効にすることはありませんか?
Bazelにインクルードディレクトリを追加できませんか?ここに追加するフラグについてはhttps://docs.bazel.build/versions/master/bazel-and-cpp.html#include-pathsを参照してください。 – user2205930
システムのインクルードパスにシンボリックリンクを追加して、必要なディレクトリを指定できますか?多分Bazelはこれをと同じものと見なすでしょう。 –
user2205930
これらの警告が何であるかを教えてください。 Abseilは、Visual Studioでも、無料で警告するという目標を持っています。 (Googleは内部的に多くの警告を有効にしていますが、警告がオンになっているので、コンパイラの警告が表示されないようにしたいと思っています) – jorgbrown