我在ubuntu服务器上安装python应用程序。我在buildout.cfg中添加了include-site-packages = false,但它仍然没有忽略dist-packages。
答案 0 :(得分:3)
Buildout不知道任何dist-packages
,因为它是Python的Debian和Ubuntu特有的补充。如果在排除site-packages
时buildout没有排除它,那么这不是唯一有这个'问题'的软件包; virtualenv也不知道,请参阅Ubuntu + virtualenv = a mess? virtualenv hates dist-packages, wants site-packages。
请在buildout issue tracker中提出问题,以便在忽略网站包时请求包含dist-packages。
请注意,在我的Debian系统上,dist-packages
目录 被排除在外。
Buildout通常通过确定以下两个命令之间的差异来确定site-packages
目录是什么:
PYTHONNOUSERSITE="x" python -c "import sys, os;print repr([os.path.normpath(p) for p in sys.path if p])"
和
python -S -c "import sys, os;print repr([os.path.normpath(p) for p in sys.path if p])"
如果后者仍包含dist-packages
目录,那么我将其归类为Ubuntu或Debian错误。在Debian 6.0.5上,使用zc.buildout 1.5.2,该路径不包含。
dist-packages
目录通常通过site.py
module(上面的-S
开关禁用)添加。 Debian和Ubuntu修补了那个模块。