17
私はSConsで構築されたプロジェクトを持っていて、私はClang Static Analyzerを使ってコードを分析しようとしています。しかし、SConでClangの "スキャンビルド"を動作させるにはどうすればよいですか?
scan-build scons
SConsはを実行しているときは、scan-build
によって導入された設定を無視しているようです。どうすればこの作品を作れますか?
私はSConsで構築されたプロジェクトを持っていて、私はClang Static Analyzerを使ってコードを分析しようとしています。しかし、SConでClangの "スキャンビルド"を動作させるにはどうすればよいですか?
scan-build scons
SConsはを実行しているときは、scan-build
によって導入された設定を無視しているようです。どうすればこの作品を作れますか?
ウェイscan-build
は、ビルドの仕方を制御するために、ビルドシステム(例えば、make
など)によって使用されるさまざまな環境変数を設定します。これらのいくつかは以下のとおりです。
CC
- CコンパイラCXX
として使用するプログラムの名前 - C++コンパイラとして使用するプログラムの名前CCC_*
- クランの静的アナライザの動作を制御するさまざまな環境変数SConsは、通常、ビルドを実行する前に環境を整理します(これは機能です)。上記の環境変数が有効になり、SConstruct
にこのような何かを作るために:
env = Environment()
env["CC"] = os.getenv("CC") or env["CC"]
env["CXX"] = os.getenv("CXX") or env["CXX"]
env["ENV"].update(x for x in os.environ.items() if x[0].startswith("CCC_"))
私はあなたが最後の3行が行くべき場所を見つけるために、より大きなSConstructファイルに「環境」をgrep必要があることを追加します。 –