2012-02-16 65 views

回答

26

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_")) 
+0

我想補充一點,你應該在更大的SConstruct文件用grep的「環境」,找到其中最後三行應該去。 – 2017-02-10 10:25:43

相關問題