我有一个谜:我正在使用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
时,它永远不会尝试stat
或open
$HOME/.scons
- 实际上它是唯一寻找site_scons
的地方}是./site_scons
。
有没有人见过这个?
答案 0 :(得分:2)
您需要更新到更高版本才能让〜/ .scons自动被SCons选中。
这是1.2文档,没有提到〜/ .scons
答案 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
中添加一些调试输出。