如何在'scons'中为命令生成器指定COMSTR

scons中的许多内置生成器都有$ * COMSTR变量,这些变量用于更改其关联的生成器的默认输出。我们可以使用$ * COMSTR变量来使我们的构建过程更清晰易懂。


我想为“命令”构建器设置一个$ * COMSTR变量。


target = 'mydb.db3'


populatesql = 'populate.sql'

sources = [populatesql]


command = '@sqlite3 $TARGET < ' + populatesql


built_database = env.Command(target, sources, command)

我发现我可以在命令前加上'@'字符来抑制输出,但是我一直无法发现如何在Command Builder中使用$ * COMSTR。我在这里错过了一个把戏吗?


哈士奇WWW
浏览 139回答 1
1回答

一只甜甜圈

您不要将命令字符串与构建器关联。命令字符串与一个Action对象相关联。如果您想要命令字符串,只需编写如下内容:built_database = env.Command(target, sources,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Action('mySqlite3', 'Generating $TARGET with sqlite3'))或者,如果您想对其进行微调env['SQLITE3COMSTR'] = 'Generating $TARGET from $SOURCES with sqlite3'...built_database = env.Command(target, sources, Action('mySqlite3', '$SQLITE3COMSTR'))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python