【问题标题】:scons "Import of non-existent variable" env: how to fix?scons“导入不存在的变量”环境:如何修复?
【发布时间】:2018-10-01 11:58:03
【问题描述】:

我希望所有 SConscript 都可以共享来自 SConstruct 的环境定义,如下所示:

cat ./SConstruct

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

然后在./mydir下

猫./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 无法“导入环境”,是我的语法错误吗? 谢谢。

【问题讨论】:

  • 一个应该被“导入”的变量,必须首先被“导出”。您在文档(MAN 页面、UserGuide...)的哪个位置找到了对 Import() 方法的引用,但附近的某个地方没有提到 Export()?只是要求可能在某些地方改进我们的文档...

标签: python import environment-variables scons


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-06
    • 1970-01-01
    相关资源
    最近更新 更多