我是waf构建工具的新手,我已经搜索了答案,但很少有无用的链接。
有人知道吗?
由于wscript本质上是一个python脚本,我想我可以使用os
包吗?
答案 0 :(得分:2)
不要使用os
模块,而是使用DEST_*
变量:
ctx.load('compiler_c')
print (ctx.env.DEST_OS, ctx.env.DEST_CPU, ctx.env.DEST_BINFMT)
在我的机器上,这将打印('linux', 'x86_64', 'elf')
。然后你可以发送它。
答案 1 :(得分:0)
您可以在任何可以使用任何其他python脚本的地方使用import
。
我更喜欢使用platform
来编写函数os-agnostic,而不是评估os
的某些属性。
在Build-related commands os-agnostic中编写waf book示例,看起来像这样:
import platform
top = '.'
out = 'build_directory'
def configure(ctx):
pass
def build(ctx):
if platform.system().lower().startswith('win'):
cp = 'copy'
else:
cp = 'cp'
ctx(rule=cp+' ${SRC} ${TGT}', source='foo.txt', target='bar.txt')