如何设置Scons以输出sconstruct所在的目录?

时间:2013-04-04 15:50:25

标签: scons

我有一个类似于以下的文件夹结构:

项目
----- SRC
-------- LIB
-----斌
--------调试
----- scons的

我的sconstruct和sconscripts位于“scons”文件夹中。我想做的是从我的lib文件夹中获取构建输出并将其放入bin / debug文件夹中。我尝试过这样的事情:

Sconstruct:

VariantDir('../bin/Debug','.')
lib = SConscript('libSconscript')

Sconscript:

env.StaticLibrary('../bin/Debug/lib', Glob('../src/lib/*.cpp'))

但这似乎不起作用。从手册页中,听起来像VariantDir()会像我一样工作,但它似乎没有。如果有的话,它根本不构建或构建在当前目录中。有谁指出我做错了什么?

如果有任何混淆,我道歉。在一个sconscript中跟踪所有这些目录比人们想象的要困难。

1 个答案:

答案 0 :(得分:1)

目前SCons不支持此功能。 SConstruct必须位于项目的根级别。也就是说,您需要执行以下操作:

Project
-----SConstruct
-----src
--------lib
-----bin
--------Debug