1

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

项目
-----src
--------lib
-----bin
--------Debug
-----scons

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

构造:

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

应征者:

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

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

如果有任何令人困惑的地方,我深表歉意。在 sconscript 中跟踪所有这些目录比人们想象的要困难得多。

4

1 回答 1

1

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

Project
-----SConstruct
-----src
--------lib
-----bin
--------Debug
于 2013-04-04T16:37:22.327 回答