【问题标题】:How to install pip with two python version exist on CentOS 6.4?如何在 CentOS 6.4 上安装两个 python 版本的 pip?
【发布时间】:2023-03-04 10:40:01
【问题描述】:

我有一个 CentOS 6.4,默认的 python 版本是 2.6。

我想在 python 2.7 上运行 virtualenv,所以首先我尝试安装 python 2.7。

yum install python27

然后我运行

virtualenv -p /usr/bin/python2.7 ./venv

然后输出显示它尝试从pypi获取setuptools,但是我的环境无法访问pypi.python.org。我已更新 ~/.pip/pip.conf 以使用可用的本地源,但 virtualenv 仍然从 pypi.python.org 获取 pip。 这是我感到困惑的事情之一。

我检查了 /usr/lib/python2.7/,站点包是空的,而 /usr/lib/python2.6/ 不是。所以当我使用 python 2.7 时,它没有可用的东西。当我使用默认的 python 时,它已经安装了 pip 工具,它不需要从 pypi.python.org 获取它。

如何单独为 python 2.7 安装 pip?

以前我安装 pip 的人

yum install python-setuptools
yum install python-pip

【问题讨论】:

  • @shivsn 是的,它可以帮助我安装 python2.7,谢谢。但在那之后,当我尝试“virtualenv -p /usr/local/bin/python2.7 ./venv”时,它仍然从 pypi.python.org 获取 pip。
  • 它解释了如何安装pip 请使用easy_install 进行。
  • @shivsn 当使用“python2.7 ez_setup.py”时,当这台机器处于内部环境时,它会尝试从互联网连接。我从另一台机器下载 setuptools egg 并使用 scp 将其复制到目标机器。现在 pip2.7 好了,但是 virtualenv 还是从 pypi.python.org 获取 pip。
  • @shivsn 由“virtualenv -p /usr/local/bin/python2.7 --extra-search-dir /usr/local/bin/ --never-download venv”解决。我手动将 setuptools-0.6c11-py2.7.egg 放在 /usr/local/bin 中。

标签: python centos pip virtualenv setuptools


【解决方案1】:

第二个问题,如何单独安装python2.7的pip可以解决如下:

下载具体版本的python源码并安装到/usr/local

wget http://python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
tar xf Python-2.7.6.tar.xz
cd Python-2.7.6
./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall

然后安装 setuptools 和 pip

安装easy_install(事先准备好ez_setup.py)

python2.7 ez_setup.py

安装 pip

easy_install-2.7 pip

easy_intall-2.7 pip 需要上网,在我的环境中获取pip源文件并使用“python2.7 setup.py install”。

pip2.7 install [packagename]

在我的环境中,我更新 .pip/pip.conf 以使用内部 pip 源。

(以上代码以python 2.7为例)

要查看详细信息,您可以查看以下网址:

http://toomuchdata.com/2014/02/16/how-to-install-python-on-centos/

第一个问题,新建虚拟环境时,virtualenv会为这个环境安装setuptools。如果没有指定 python 版本,则使用系统默认的 python 和默认的 pip。如果找不到 pip,则尝试从 pypi.python.org 获取它。

在我的环境下,python2.7和pip2.7安装后,尝试新建virtualenv时,还是从pypi.python.org获取pip,估计是virtualenv没有找到python2.7和pip2.7.

如果你可以访问 pypi.python.org,那很好。

如果您处于无法访问 pypi.python.org 的内部环境,virtualenv 提供了 -extra-search-dir 和 --never-download 命令。所以可以提前准备好setuptools,从U盘拷贝,使用scp,或者其他解决方案。

将 setuptools-0.6c11-py2.7.egg 移动到 /usr/local/bin。

我们终于可以使用virtualenv了

virtualenv -p /usr/local/bin/python2.7 --extra-search-dir /usr/local/bin/ --never-download venv

【讨论】:

    猜你喜欢
    • 2014-12-04
    • 2013-05-06
    • 2013-04-19
    • 2013-04-12
    • 2016-02-10
    • 2013-11-26
    • 1970-01-01
    • 2014-02-08
    • 2021-12-11
    相关资源
    最近更新 更多