How to install pip in CentOS 7?
现在包括100 7 epel Python:yum install python343.4
然而,当我尝试是成功的,虽然installs 3.4 Python,它不是appear安装点。这是奇怪的,因为pip应包括默认情况下,Python和3.4。which pip3也不是做不到,which pip。
如何访问我的PIP从Python包在CentOS 7 3.4 epel释放?
- 可能相关:stackoverflow.com/questions/26576086/…
- 我看了看那里,但不幸的是没有什么关系。
- 所以没有pip34二进制?好吧,如果安装了PIP,就可以通过python -m pip调用它。如果没有安装,可以使用python -m ensurepip来引导它。您可能需要提升的权限来调用后一个命令。
- 对,我在/usr/bin/中找不到pip*二进制。我肯定我在找对地方了,因为那里安装了python3.4和pyvenv-3.4,而且它们没有与其他地方进行符号连接。啊,看起来它根本不包括在python3.4包里,这有点烦人。ensurepip模块也不存在于python3.4中,因此我可能只使用IUS回购,直到EPEL向python3-pip或同等产品发货。
- 奇怪的是,iIRC每个python3.4安装都应该有ensurepip模块。在这种情况下,还有一个get-pip.py脚本,可以为您引导pip。
- 显然,python3-epel的研究还处于早期阶段。另请参见pyvenv3.4没有PIP就不能工作,python34的保险箱坏了。
我发现在CentOS 7上安装PIP3(用于python3.x软件包)的最简单方法是:
1 2
| $ sudo yum install python34-setuptools
$ sudo easy_install-3.4 pip |
当然,您需要在动手之前启用EPEL存储库。
现在您应该能够运行如下命令来安装python3.x的包:
- 这应该是公认的答案。
- 我认为这也是最好的解决办法,同时保持一切正常。我不建议编辑init.py
- 商定的最佳解决方案使其成为默认答案
- 也证实这对我有用
- 谢谢。这是公认的答案。
- 在我的RHEL-7系统上,设置了EPEL,我刚刚成功地完成了yum install python34-pip
- 值得注意的是,easy_install-3.4 pip覆盖了系统pip。之后我做了一次yum reinstall python-pip,以确保没有问题。这意味着您必须明确调用pip3才能使用它,如预期的那样。
- 在尝试了许多答案之后,这是可行的。
1
| curl https://bootstrap.pypa.io/get-pip.py | python3.4 |
或者,如果由于某种原因,您没有curl:
1 2
| wget https://bootstrap.pypa.io/get-pip.py
python3.4 get-pip.py |
在这之后你应该能跑
- 我收到错误:zipimport.zipimporterror:无法解压缩数据;zlib不可用…你知道为什么会这样吗?
- 听起来你没有zlib devel或zlib,这取决于。你能试着和你的软件包管理器一起安装吗?sudo yum安装zlib或sudo apt get安装zlib。希望有帮助。
- 我也面临与@soldiercorp相同的问题,但当我尝试安装zlib时,它会说Package zlib-1.2.3-29.el6.x86_64 already installed and latest version知道发生了什么吗?
- 如果要在OS X 10.11上安装,可以再次尝试运行xcode安装程序:xcode select--install
- 我用的是CentOS 6.7
- 从Internet到python的管道和从Internet到bash的管道一样糟糕。
python34的centos 7 yum包中包含ensurepip模块,但由于某些原因,缺少作为该模块一部分的安装工具和PIP文件。要修复,请从pypi将最新的车轮下载到模块的_bundled目录(/lib64/python3.4/ensurepip/_bundled/中):
1 2
| setuptools-18.4-py2.py3-none-any.whl
pip-7.1.2-py2.py3-none-any.whl |
然后编辑__init__.py以匹配下载的版本:
1 2
| _SETUPTOOLS_VERSION ="18.4"
_PIP_VERSION ="7.1.2" |
之后,python3.4 -m ensurepip按预期工作。每次创建虚拟环境时都会自动调用Ensurepip,例如:
1 2
| pyvenv-3.4 py3
source py3/bin/activate |
希望RH能修复损坏的python3.4 yum包,这样就不需要手动修补了。
- 非常感谢。对于需要这个的人,可以在这里找到安装工具pypi.python.org/simple/setuptools的轮子,在这里找到pip pypi.python.org/simple/pip的轮子。
- 不幸的是,编辑Ensurepip的init.py文件会导致RPM验证失败,并且在包更新时也会被覆盖。
- 我真的很想知道他们造成这场混乱的理由是什么。我告诉自己一定有一个很好的理由…
- @Xenithorb的基本原理可能是单独打包PIP,因为Fedora也有python3-pip。EPEL项目的python3显然仍在进行中。
- epel(EnterpriseLinux的额外包)python36现在与python3.6 -m ensurepip一起工作。
更新:下面提到的python34 bug最终被修复。现在这是一个完美的选择。
您可以启用ius repo并使其正常工作,而不是使用损坏的epel python34包。
主要的python34u和python35uius包包括pyvenv工具(/usr/bin/pyvenv-3.4或/usr/bin/pyvenv-3.5),其中包括pip的捆绑车轮和用于引导虚拟环境的设置工具。
python34u-pip和python35u-pipius包分别包括/usr/bin/pip3.4和/usr/bin/pip3.5。这些方法可以很好地将包安装到系统站点包目录中。
- 不知道为什么会有人反对这个答案。感谢您引起我们的注意。
- 关于投反对票,解释关于EPEL安装的"坏"评论会很有帮助。我今天也从相关的搜索中发现了ius,任何关于答案的提及都值得一次投票。
- @Markedington I编辑了答案,添加了一个到bugzilla.redhat.com/show_bug.cgi的链接?ID=1263057。
- 这个问题是用python34-3.4.5-4解决的。
1 2 3
| yum install python34-pip
pip3.4 install foo |
您可能需要安装EPEL存储库:
yum install -y epel-release
- 这个百胜套餐是从哪来的?
- Centos 7.*:yum install -y epel-release。
- 听起来这是最近添加到EPEL中的,很可能会成为正确的答案。一旦其他人也确认了这一点,那么我会把它作为公认的答案。
- 对我来说是一种魅力。:)
下面是我安装python34和pip的步骤
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| 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 |
了解您安装的python3的版本:
然后安装最匹配的。使用reqoquery查找结果pip3的名称。例如
1
| repoquery -l python36u-pip |
告诉我用pip3.6代替pip3
有一种简单的方法可以做到这一点,只需使用易于安装(一种用于打包python librarie的安装工具)。
那太好了。现在你有了pip:)
在Centos 7上,pip版本是pip3.4版本,位于此处:
- /usr/local/bin中的文件不太可能由rhel/centos打包。你能成功地执行"rpm-qf/usr/local/bin/pip3.4"吗?如果可以,输出上的"rpm-qi"…谁是包装工?