我对OS X上使用'Extras'和'site-packages'中的软件包的方式感到困惑。特别是,我对我在这些目录中看到的内容感到困惑,以及目录中的重复包如何相互影响,以及我应该在哪里放置我安装的包。Python的'Extras'和'site-packages'目录有什么区别?
我假设'Extras'是不是核心Python的一部分的软件包的位置,但它仍然分布在给定的平台上。例如,OS X分配有PyObjC
,twisted
和numpy
等;这些可以在'Extras'中找到。我还假设'site-packages'是我随后安装的软件包所在的目录,并且该目录在“新”机器上为空或不存在。此外,我假设安装一个新的软件包会将该版本单独保留在'Extras'中,并将任何更新放在'site-packages'中,他们会在'Extras'中“屏蔽”这些更新。 (例如,通过删除'站点包'可以简单地恢复默认安装。)
让我感到困惑的是我的'Extras'目录内容减少。与新鲜的OS X中的内容进行比较(10.8.2)安装后,“附加”我目前的配置中缺少新鲜找不到安装
altgraph
altgraph-0.9-py2.7.egg-info
dateutil
macholib
macholib-1.4.2-py2.7.egg-info
modulegraph
modulegraph-0.9.1-py2.7.egg-info
numpy #though numpy-1.6.1-py2.7.egg-info is there
pkg_resources.py # though .pyc is there
py2app
py2app-0.6.3-py2.7.egg-info
setuptools # though setuptools-0.6c12dev_r88846-py2.7.egg-info is there
site.py # though .pyc and .pyo are there
xattr
xattr-0.6.2-py2.7.egg-info
zope
zope.interface-3.5.1-py2.7.egg-info
,有两个附加文件
pkg_resources.py.OLD.1356069438.31
setuptools-0.6c12dev_r88846-py2.7.egg-info.OLD.1356069438.31
setuptools.OLD.1356069438.31
就我的回忆而言,这些都是我自己更新的所有软件包,所有版本都以“网站包”的形式出现。
'Extras'目录的内容应该以这种方式“减少”吗?更新'Extras'中的软件包是否将它移动到'site-packages',或者'Extras'版本是否应该单独保留,并且只需要'site-packages'中的那些软件“隐藏”?
1:/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
2:/Library/Python/2.7/site-packages/
注:我*不*寻找涉及'virtualenv'的答案。最初我使用各种工具(二进制安装程序等)安装了一些软件包。),但现在只使用'pip'(几乎)。我没有遇到任何错误(到目前为止)。 – orome 2013-02-14 18:06:03
我问的一个原因是,虽然'蛋黄'一直告诉我,我的Twisted(在'Extras'中)已过时。 Twisted项目警告说会干扰苹果电脑公司令人不安的版本。我的假设是(我)可以升级,导致在'网站包'中有一个最新的Twisted,'Extras'中有一个不受干扰的版本;但看起来这样的更新会删除'Extras'中的版本。 – orome 2013-02-14 18:09:23