为什么scons默认不会查看〜/ .scons / site_scons?

时间:2012-01-20 14:39:54

标签: default scons

我有一个谜:我正在使用Ubuntu SCons(软件包版本1.2.0.d20100117-1)。我有一个目录$HOME/.scons/site_scons/,所有文档都说应该是默认搜索的站点目录之一。有一个模块子目录fpga。在我的项目目录中,我有一个SConstruct文件,仅包含:

import fpga

这是奇怪的:当我运行scons时,我收到以下错误:

$ scons
scons: Reading SConscript files ...
ImportError: No module named fpga:
  File "BLAh/foo/SConstruct", line 1:
    import fpga

如果我运行scons --site-dir=$HOME/.scons/site_scons,看起来它应该是默认值,那么一切都像魅力一样。

另外一个奇怪的问题:当我运行strace scons时,它永远不会尝试statopen $HOME/.scons - 实际上它是唯一寻找site_scons的地方}是./site_scons

有没有人见过这个?

3 个答案:

答案 0 :(得分:2)

您需要更新到更高版本才能让〜/ .scons自动被SCons选中。

这是1.2文档,没有提到〜/ .scons

http://scons.org/doc/1.2.0/HTML/scons-man.html

答案 1 :(得分:0)

据我所知, site_scons 文件夹应与 SConstruct 文件位于同一文件夹中。然后它工作正常。当您拥有计算机范围的site_scons文件夹时, - site-dir 选项就在那里。

答案 2 :(得分:0)

在SCons 2.1.0.r5357上进行了一些挖掘之后,如果站点初始化文件被命名,这将有效:

$HOME/.scons/site_scons/site_init.py

这在文档中肯定不明显。如果这仍然是一个问题,例如使用另一个机器范围的站点,您可以在SCons/Scripts/Main.py函数的_load_site_scons_dir中添加一些调试输出。