1

你们如何将有价值的参数传递给 scons ?我浏览了它的文档,不幸的是我仍然不清楚。我以前从未使用过它。

请考虑这个构建脚本。

这是其中的代码片段

add_option( "boost-version", "boost version for linking(1_38)" , 1 , True , "boostVersion" )

boostVersion = GetOption( "boostVersion" )
if boostVersion is None:
    boostVersion = ""
else:
    boostVersion = "-" + boostVersion

我尝试打电话scons --boost-version=1.51并尝试过scons --boostVersion=1.51,但都没有奏效。

4

1 回答 1

1

您可以使用参数:

scons boost-version=1.51在命令行上调用

然后,获取 SConscript 中的值:

boostVersion = defaultBoostVersion
if 'boost-version' in ARGUMENTS: 
  boostVersion = ARGUMENTS["boost-version"]

或者,正如elmo建议的那样:

boostVersion = ARGUMENTS.get("boost-version", defaultBoostVersion)

scons 文档有更多信息,同一页面还描述了如何使用 AddOption您之前尝试过的命令。它也可以使用,但参数(至少对我而言)更容易理解。

于 2012-10-31T08:26:34.300 回答