【问题标题】:`setup.py develop` installs zipped eggs. How to avoid this?`setup.py develop` 安装压缩鸡蛋。如何避免这种情况?
【发布时间】:2015-05-20 22:09:42
【问题描述】:

我意识到如果你为my_pony_project这样做

setup.py develop

安装install_requires 包的压缩鸡蛋(例如fancy_lib_of_someone_else)。我想避免这种情况。

如何强制进行正常(非压缩)安装?

我的setup.py 看起来像这样:

import setuptools

setuptools.setup(
    name='foo',
    packages=setuptools.find_packages(),
    install_requires=['fancy_lib_of_someone_else>=1.2']

背景

我想避免使用压缩鸡蛋,因为如果使用压缩鸡蛋,pip 似乎会安装两次软件包。一次拉上拉链,一次拉平 :-(

【问题讨论】:

  • 也许您正在寻找的可以在这个答案中找到:goo.gl/ql7nDa
  • @jonrsharpe 我为什么要这样做?我喜欢依赖管理。 setup.py 中的新条目可能来自其他人。我只想引入依赖项。顺便说一句,我更喜欢 apt to dpkg :-)
  • @hairesis 您提供的链接解释了为什么鸡蛋是好的。很高兴知道。在这个用例中,我想要一个平面文件安装。
  • 好奇心和热情避免XY problems的混合 - 知道你为什么这样做可以让其他人更容易提出解决方法,替代方案等。你可以将你的实际例子添加到你的问题中?
  • @jonrsharpe 你是对的。这是一个 xy 问题。我更新了问题以说明背景:我想避免使用压缩鸡蛋,因为如果使用压缩鸡蛋,pip 似乎会安装两次软件包。

标签: python setuptools egg


【解决方案1】:

回答我自己的问题:

在安装包的系统上创建这个文件:

~/.distutils.cfg:

[easy_install]
zip_ok = False

是的,这是XY problem

升级到新的 pip 版本应避免重复安装。目前我们仍在使用 1.5.6 版本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-16
    • 1970-01-01
    • 1970-01-01
    • 2016-01-05
    • 2017-03-08
    • 1970-01-01
    • 2011-01-02
    相关资源
    最近更新 更多