【问题标题】:Error in upgrading pip on Linux在 Linux 上升级 pip 时出错
【发布时间】:2017-05-16 15:31:01
【问题描述】:

我在 linux 系统上运行命令为:

sudo pip install --upgrade pip

但我收到的错误消息是:

pkg_resources.DistributionNotFound: The 'pip==6.1.1' distribution was not found and is required by the application

如果我去查看pip --version,我会得到以下回复:

pip 9.0.1 from /usr/local/lib/python2.7/site-packages (python 2.7)

我为什么需要'pip==6.1.1' distribution 以及如何获得它?

【问题讨论】:

  • sudo pip --version 显示什么?
  • sudo pip --version 给出相同的错误消息:pkg_resources.DistributionNotFound: The 'pip==6.1.1' distribution was not found and is required by the application
  • 所以基本上你有 2 个pips。您的本地用户之一,root(或 sudo)看到的另一个用户。简单的“修复”是sudo easy_install pip,它应该重新安装你损坏的点子。
  • 我正在运行一个虚拟python环境,当我尝试sudo easy_install pip 时,我得到sudo: easy_install: command not found
  • 哦,等等。不理会。我刚刚读到你正在运行一个 virtualenv.. 然后你根本不需要 sudo,这意味着你当前的 venv pip 是好的。

标签: python linux pip fedora


【解决方案1】:

在系统上升级pip时,作为root用户,您实际上覆盖了您的系统PIP程序,并且在为您的Linux系统(使用yum/dnf)进一步安装Python包时会遇到严重问题。

使用这个的正确方法是以用户身份创建一个 virtualenv,然后在该 virtualenv 上升级 PIP。与系统 Python 安装隔离。无论如何,您想在这台机器上使用 Python 做的任何严重的事情都应该至少运行 Python 2.7 - 如果它与 Python 3 兼容,则至少运行 3.6。 (您的系统 Python 是 2.6 并且您有一个 Python2.on /usr/local 可能会发生冲突,这完全取决于您发现的 PATH 的顺序)。

【讨论】:

    【解决方案2】:

    理想情况下,应使用sudo pip install --upgrade pip. 升级 pip

    但由于我收到错误消息:sudo: easy_install: command not found

    我需要设置环境变量路径如下:

    alias sudo='sudo env PATH=$PATH'
    

    完成后,升级命令正常工作。

    【讨论】:

      猜你喜欢
      • 2016-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-31
      • 2019-01-30
      • 2019-06-13
      • 1970-01-01
      相关资源
      最近更新 更多