如何在CentOS 7中安装pip?

Jef*_*man 104 pip python-3.4 centos7

CentOS 7 EPEL现在包含Python 3.4: yum install python34

但是,当我尝试这样做时,即使Python 3.4成功安装,它似乎也没有安装pip.这很奇怪,因为pip默认情况下应该包含在Python 3.4中.which pip3找不到任何东西,也没有找到which pip.

如何从CentOS 7 EPEL版本的Python 3.4包中访问pip?

小智 151

我发现在CentOS 7上安装pip3(用于python3.x软件包)的最简单方法是:

$ sudo yum install python34-setuptools
$ sudo easy_install-3.4 pip
Run Code Online (Sandbox Code Playgroud)

当然,您需要事先启用EPEL存储库.

您现在应该能够运行如下命令来安装python3.x的包:

$ pip3 install foo
Run Code Online (Sandbox Code Playgroud)

  • 在我的RHEL-7系统上,设置了EPEL,我刚刚成功地执行了`yum install python34-pip` (6认同)
  • 值得注意的是`easy_install-3.4 pip`覆盖了系统`pip`。之后我做了一个 `yum restart python-pip` 以确保没有问题。这意味着您必须按预期显式调用 `pip3` 才能使用它。 (2认同)

Dev*_*ops 52

curl https://bootstrap.pypa.io/get-pip.py | python3.4
Run Code Online (Sandbox Code Playgroud)

或者如果curl由于某种原因你没有:

wget https://bootstrap.pypa.io/get-pip.py
python3.4 get-pip.py
Run Code Online (Sandbox Code Playgroud)

在此之后你应该能够运行

$ pip3
Run Code Online (Sandbox Code Playgroud)


Dav*_*ave 16

用于python34的CentOS 7 yum软件包确实包含该ensurepip模块,但由于某种原因缺少应该作为该模块一部分的setuptools和pip文件.要修复,请将PyPI中的最新轮子下载到模块的_bundled目录(/lib64/python3.4/ensurepip/_bundled/)中:

setuptools-18.4-py2.py3-none-any.whl
pip-7.1.2-py2.py3-none-any.whl
Run Code Online (Sandbox Code Playgroud)

然后编辑__init__.py以匹配下载的版本:

_SETUPTOOLS_VERSION = "18.4"
_PIP_VERSION = "7.1.2"
Run Code Online (Sandbox Code Playgroud)

之后python3.4 -m ensurepip按预期工作.每次创建虚拟环境时都会自动调用Ensurepip,例如:

pyvenv-3.4 py3
source py3/bin/activate
Run Code Online (Sandbox Code Playgroud)

希望RH能修复损坏的Python3.4 yum包,这样就不需要手动修补了.

  • 非常感激.对于那些需要这个轮子的人来说,可以在这里找到setuptools https://pypi.python.org/simple/setuptools/,这里有点pip https://pypi.python.org/simple/pip/ (2认同)
  • 我真的很想知道他们造成这种混乱的理由是什么.我告诉自己必须有一个很好的理由...... (2认同)

car*_*rge 9

更新:下面提到的python34错误终于得到修复.现在这是一个非常好的选择.

您可以启用IUS repo并使其正常工作,而不是使用损坏的EPEL python34软件包.

  • pip在虚拟环境中

主要python34upython35uIUS包包括pyvenv工具(/usr/bin/pyvenv-3.4/usr/bin/pyvenv-3.5),包括用于引导虚拟环境的pip和setuptools的捆绑轮.

  • 全球点子

python34u-pippython35u-pipIUS套餐包括/usr/bin/pip3.4/usr/bin/pip3.5分别.这些工作正常,可以将软件包安装到系统site-packages目录.


She*_* Yu 7

yum install python34-pip

pip3.4 install foo
Run Code Online (Sandbox Code Playgroud)

您可能需要安装EPEL存储库:

yum install -y epel-release