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?
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?
我发现在CentOS 7上安装pip3(用于python3.x包)最简单的方法是:
$ sudo yum install python34-setuptools
$ sudo easy_install-3.4 pip
当然,首先你需要启用EPEL存储库。
现在,你应该能够运行如下命令来安装Python3.x的软件包:
$ pip3 install foo
yum install python34-pip
。 - some bits flippedeasy_install-3.4 pip
覆盖了系统的 pip
。之后我进行了 yum reinstall python-pip
以确保没有问题。这意味着您必须显式地调用 pip3
来使用它,正如预期的那样。 - miken32curl https://bootstrap.pypa.io/get-pip.py | python3.4
如果出于某些原因您没有 curl
:
wget https://bootstrap.pypa.io/get-pip.py
python3.4 get-pip.py
完成此步骤后,您应该能够运行
$ pip3
zlib
时,它显示Package zlib-1.2.3-29.el6.x86_64 already installed and latest version
。有什么想法吗? - Mostafiz RahmanCentOS 7的python34 yum包中包含了ensurepip
模块,但由于某种原因缺少了该模块应该有的setuptools和pip文件。为了解决这个问题,需要从PyPI下载最新的wheels并将其放入该模块的_bundled
目录(/lib64/python3.4/ensurepip/_bundled/
)中:
setuptools-18.4-py2.py3-none-any.whl
pip-7.1.2-py2.py3-none-any.whl
然后编辑__init__.py
以匹配下载的版本:
_SETUPTOOLS_VERSION = "18.4"
_PIP_VERSION = "7.1.2"
在此之后,python3.4 -m ensurepip
就可以正常工作了。例如,每次创建虚拟环境时都会自动调用 ensurepip:
pyvenv-3.4 py3
source py3/bin/activate
python3-pip
。EPEL项目上的python3显然仍在进行中。 - maxschlepzigpython36
现在可以通过 python3.6 -m ensurepip
运行。 - Kevin更新:下面提到的python34错误已经被修复,现在它是一个完美的选择。
与其使用损坏的EPEL python34软件包,您可以启用IUS仓库并使其正常工作。
主要的python34u
和python35u
IUS软件包包括pyvenv工具(/usr/bin/pyvenv-3.4
或/usr/bin/pyvenv-3.5
),其中包含用于引导虚拟环境的pip和setuptools的打包wheel。
python34u-pip
和python35u-pip
IUS软件包分别包括/usr/bin/pip3.4
和/usr/bin/pip3.5
。这些都可以很好地将软件包安装到系统site-packages目录中。
yum install python34-pip
pip3.4 install foo
yum install -y epel-release
yum install -y epel-release
- Shen Yu更新 2019
起初我尝试使用 easy_install,但它并没有以清晰、直观的方式安装包。而且当需要移除包时,它会留下许多需要清理的痕迹。
sudo yum install epel-release
sudo yum install python34-pip
pip install package
这是我使用的解决方案,它将 "pip3" 安装为系统上的 pip。它还使用标准 rpm 结构,因此在卸载时很干净。如果您想在系统上同时拥有 python2 和 python3 包管理器,我不确定需要采取哪些步骤。
以下是我安装Python34和pip的步骤:
yum update -y
yum -y install yum-utils
yum -y groupinstall development
yum -y install https://centos7.iuscommunity.org/ius-release.rpm
yum makecache
yum -y install python34u python34u-pip
python3.6 -v
echo "alias python=/usr/bin/python3.4" >> ~/.bash_profile
source ~/.bash_profile
pip3 install --upgrade pip
# if yum install python34u-pip doesnt work, try
curl https://bootstrap.pypa.io/get-pip.py | python
curl https://bootstrap.pypa.io/get-pip.py | python3
。 - mRyan有一个简单的方法可以通过使用easy_install(一种打包Python库的Setuptools)来完成。
假设。 在执行此操作之前,请检查您的Centos机器上是否安装了Python(至少2.x)。
安装pip的步骤。
现在让我们安装easy_install,
sudo yum install python-setuptools python-setuptools-devel
现在让我们使用easy_install安装pip,
sudo easy_install pip
太棒了。现在你有了pip :)
查看您安装的Python3版本:
yum search pip
然后安装最佳匹配项。使用reqoquery查找结果pip3的名称。
repoquery -l python36u-pip
告诉我要使用pip3.6而不是pip3
在CentOS 7上,pip
版本为pip3.4
,并位于此处:
/usr/local/bin/pip3.4
pip34
二进制文件?如果已安装,您始终可以通过python -m pip
调用 pip。如果未安装,则可以使用python -m ensurepip
引导它。您可能需要提升权限来调用后者的命令。 - cel/usr/bin/
中没有找到任何pip*
二进制文件。我相当确定我正在寻找正确的位置,因为那里安装了python3.4
和pyvenv-3.4
,它们没有链接到其他地方。啊好吧,看起来它根本没有包含在python3.4包中,这有点烦人。ensurepip
模块也不存在于python3.4
中,所以我可能会使用iUS存储库,直到EPEL发布python3-pip
或等效版本。 - Jeff Widmanpython3.4
安装都应该有ensurepip
模块。在这种情况下,还有一个get-pip.py
脚本,可以为您引导 pip。 - cel