为啥easy_install会提取一些python鸡蛋而不是其他的?
Posted
技术标签:
【中文标题】为啥easy_install会提取一些python鸡蛋而不是其他的?【英文标题】:Why does easy_install extract some python eggs and not others?为什么easy_install会提取一些python鸡蛋而不是其他的? 【发布时间】:2011-02-05 23:17:48 【问题描述】:查看我的 /usr/local/lib/python.../dist-package 目录,我有 .egg
目录和 .egg
文件。
为什么安装程序选择将额外的包添加到.egg
目录,而将其他文件保留为.egg
扩展名?
【问题讨论】:
相关:***.com/a/60166477/1959808 相关:***.com/a/33014444/1959808 相关:***.com/a/7287318/1959808 【参考方案1】:我无法解释为什么有些鸡蛋会被压缩(文件)而有些是目录,但我可以提供这个:如果你讨厌压缩鸡蛋(就像我一样),请将其放在 @987654322 的 [easy_install]
部分@:
【讨论】:
【参考方案2】:如果包只包含纯 Python 代码,它可以保留为一个 egg 文件。 Python 解释器可以直接从 egg 加载 Python 模块。如果包包含用 C 或其他数据编写的模块,则需要提取 egg 以便可以访问 C 模块和/或数据。我相信这是包的默认行为。较新版本的 Python 可能能够从 egg 文件加载 C 模块;我不确定那部分。
包的创建者还可以专门指示安装程序解压缩包,方法是在其setup.py
中将zip_safe = False
传递给setup()
。
最后,安装人员可以通过将-Z
option 传递给easy_install
或在pydistutils.cfg
中设置zip_ok = False
来明确告诉easy_install
解包鸡蛋。
【讨论】:
以上是关于为啥easy_install会提取一些python鸡蛋而不是其他的?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Python easy_install 不能在我的 Mac 上运行?
为啥 Python easy_install 不能在我的 Mac 上运行?