【问题标题】:Make pip download prefer to download source-distributions (not wheels)使 pip 下载更喜欢下载源分发(而不是轮子)
【发布时间】:2019-06-26 21:23:55
【问题描述】:

这个问题explains如何让pip下载并保存包。如果我遵循这个公式,Pip 将下载 wheel (.whl) 文件(如果有)。

(venv) [user@host glances]$ pip download -d wheelhouse -r build_requirements.txt
Collecting wheel (from -r build_requirements.txt (line 1))
  File was already downloaded /usr_data/tmp/glances/wheelhouse/wheel-0.29.0-py2.py3-none-any.whl
Collecting pex (from -r build_requirements.txt (line 2))
  File was already downloaded /usr_data/tmp/glances/wheelhouse/pex-1.1.18-py2.py3-none-any.whl
Collecting requests (from -r build_requirements.txt (line 3))
  File was already downloaded /usr_data/tmp/glances/wheelhouse/requests-2.12.4-py2.py3-none-any.whl
Collecting pip (from -r build_requirements.txt (line 4))
  File was already downloaded /usr_data/tmp/glances/wheelhouse/pip-9.0.1-py2.py3-none-any.whl
Collecting setuptools (from -r build_requirements.txt (line 5))
  File was already downloaded /usr_data/tmp/glances/wheelhouse/setuptools-32.3.1-py2.py3-none-any.whl
Successfully downloaded wheel pex requests pip setuptools

它下载的每个文件都是一个 Wheel - 但是如果我想获得不同类型的文件怎么办?

我实际上想下载 sdist (.tar.gz) 文件而不是 .whl 文件?有没有办法告诉 Pip 我真正想要它获取哪些类型的文件?因此,我可能想要一堆 tar.gz 文件,而不是得到一个充满轮子的目录。

【问题讨论】:

    标签: python pip


    【解决方案1】:

    根据pip install -h

    --no-use-wheel 搜索索引和查找链接位置时不查找和首选轮存档。已弃用,支持 --no-binary。

    --no-binary 不要使用二进制包。可以多次提供,每次都增加现有值。接受 :all: 禁用所有二进制包, :none: 清空集合,或者一个或多个包

    如果您的版本太旧,您可能需要使用pip install -U pip 升级 pip。

    【讨论】:

      【解决方案2】:

      使用pip download --no-binary=:all: -r requirements.txt

      根据 pip 文档:

      --无二进制:

      不要使用二进制包。可多次供应,每次 时间添加到现有值。接受 :all: 以禁用所有 二进制包,:none: 清空集合,或者一个或多个包名 它们之间用逗号。请注意,有些软件包很难 在它们上使用此选项时编译并可能无法安装。

      它对我有用!

      【讨论】:

        猜你喜欢
        • 2020-03-19
        • 1970-01-01
        • 2016-09-10
        • 2015-06-29
        • 2017-03-06
        • 2012-09-04
        • 1970-01-01
        • 1970-01-01
        • 2019-02-28
        相关资源
        最近更新 更多