【问题标题】:How to use pip with new Python version?如何在新的 Python 版本中使用 pip?
【发布时间】:2013-02-02 17:27:59
【问题描述】:

我有 python2.6 作为我的默认 python,我一直在使用分发 easy_install 在~/.local 中安装软件包。 easy_install 有很多问题,我想切换到 pip,同时从 python2.6 升级到 python2.7。我现有的 pip 版本与 python2.6 相关联,并且总是在 ~/.local/lib/python2.6 中查找包。这意味着我必须再次使用 Python2.7 安装 pip,但使用现有的 python2.6 pip 似乎无法做到这一点,对吧?

因此我尝试下载 pip 并像这样安装它:

python2.7 setup.py install --prefix=~/.local

注意我没有root,所以我必须在本地安装pip。当我尝试这个时,我得到:

Traceback (most recent call last):
  File "setup.py", line 5, in <module>
    from setuptools import setup
ImportError: No module named setuptools

我该如何解决这种情况?我显然不能用 pip 安装 setuptools,因为我不能安装 pip ......我要做的就是将 pip 与 python2.7 链接,升级 pip 然后用 pip 安装所有东西,忘记easy_install和旧的python2.6及其包。

当我尝试下面的答案时,我得到:

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /home/user/.local/lib/python2.7/site-packages

This directory does not currently exist.  Please create it and try again, or
choose a different installation directory (using the -d or --install-dir
option).

我必须手动创建(使用mkdir)目录:

~/.local/lib/python2.7/site-packages

这似乎坏了...一旦我这样做了它就可以了,但是为什么需要手动创建目录?

谢谢。

【问题讨论】:

    标签: python pip distribute


    【解决方案1】:

    你需要先安装setuptools;它有自己的installation script(它是 egg 文件的一部分):

    wget "http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg"
    sh setuptools-0.6c11-py2.7.egg --prefix=~/.local
    

    请注意,它也支持--prefix= 选项。它会找到您的 python2.7 二进制文件(而不是 2.6 版本),因为您下载了 2.7 egg 版本。

    【讨论】:

    • @user248237:该目录需要手动创建,以确保您没有意外指向错误的位置。
    猜你喜欢
    • 1970-01-01
    • 2014-04-28
    • 1970-01-01
    • 2012-08-01
    • 2021-12-03
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多