如何在 SConstript 中正确导出变量

how to export variable correctly in SConstript

我有一个目录:

src
   sconscript
   main
       sconstruct
       main.cpp

在征兵中,我写

env=Environment(CXX='g++',LINK='g++')

在构建中,我写

SConscript('../sconscript',exports='env')
Import('env')
env.Program(target='a.out',source='main.cpp')

然后我转到目录 src/main 并键入 scons -Q,它只是抱怨:

Export of non-existent variable ''env''

来自http://scons.org/doc/HTML/scons-user.html#idm139837640372096,我认为语法是正确的。那么问题是什么?

我用的是ubuntu16.04、Python2.7.12和scons 2.5.0

你的 SConscript 应该是

env=Environment(CXX='g++',LINK='g++')
Return('env')

你的 SConstruct 应该是

env = SConscript('../sconscript')
env.Program(target='a.out',source='main.cpp')

查看联机帮助页: http://scons.org/doc/production/HTML/scons-man.html