scons "Import of non-existent variable" env:如何修复?

scons "Import of non-existent variable" env: how to fix?

我希望所有的 SConscript 都能共享来自 SConstruct 的环境定义,像这样:

cat ./SConstruct

import os,sys
env = Environment(ENV = {'PATH' : os.environ['PATH']})
env.SConscript(dirs=['mydir'])

然后在./mydir

cat ./SConscript

Import('env')
env = env.Clone()

我试试运行吧:

scons
scons: Reading SConscript files ...

scons: *** Import of non-existent variable ''env''
File "/home/john/mydir/SConscript", line 1, in <module>

那么为什么scons失败"Import env",是我的语法错误吗? 谢谢

正如@dirkbaechle 所说。 将您的 SConstruct 更改为:

import os,sys
env = Environment(ENV = {'PATH' : os.environ['PATH']})
env.SConscript(dirs=['mydir'], exports='env')