我正在使用带有python 2.7.1的scons 我的问题是,我想在build目录中生成目标文件。 但目标文件正在我的源目录中创建。
我的代码是:
env.Library('Liba', Glob(builddir + '/*.c'))
你能告诉我如何生成目标文件inbuild目录
感谢。
答案 0 :(得分:1)
在SCons术语中,您要求的内容称为变体目录,或简称为VariantDir
。您可以使用一些选项将目标放在VariantDir中,如here所述。
您可以使用具有以下语法的VariantDir()
函数:
VariantDir(variant_dir, src_dir, [duplicate])
duplicate
参数是boolean
,表示您是否希望将源代码复制到变量目录。
使用VariantDir的另一种方法是,如果您有SConstruct和SConscript脚本文件的层次结构,当使用SConscript()函数调用子SConscripts时,其中一个参数是variant_dir
,详见此处:
SConscript(dirs=subdirs, [name=script, exports, variant_dir, duplicate])
请注意SConscript()
函数也有duplicate
参数。