2011-09-18 138 views
1

运行SCons到目前为止,我只看到在单个SConstruct文件所在的文件夹中运行SCons的示例。比方说,我的项目结构是这样的:文件夹层次结构中的多个位置从

  • 的src/*(CPP | H)
  • 工具/ mytool/*(CPP | H)

我想是什么。能够在根目录以及tools/mytool中运行'scons'。后者只编译mytool。这对SCons来说可能吗?

我假定它涉及到创建另一个SConstruct文件。我做了另一个问题:工具/ mytool/SConstruct

我把它仅包含:

SConscript('../../SConstruct') 

,我是想这样做导入( 'ENV mytoolTarget')并调用默认(mytoolTarget),但只用上述运行在当前目录而不是根目录运行它,所以包含路径被破坏。

这样做的正确方法是什么?

+0

我相信你只想要多个SConstruct文件,如果你想建立多个独立的产品。否则,您希望避免“递归制造问题”,并且在单个SConstruct下具有SConscript文件的层次结构,并按照答案中的建议使用-u运行。 –

回答

2

您可以使用-u选项来执行此操作。从任何子目录中,scons -u将在目录树中向上搜索SConstruct文件。