在python3.5中使用pip

我centos7上同时有python2.7和python3.5。现在希望能在使用python3.5时也能用pip。本来这应该是很容易的一件事,然而我一步步掉进坑里。。

官网安装pip的方法是,https://pip.pypa.io/en/stable/installing/

于是我执行了

wget https://bootstrap.pypa.io/get-pip.py
python3.5 get-pip.py

报错 zipimport.ZipImportError: can't decompress data; zlib not available

一顿google,把这两个链接里的包都安装上好了

http://askubuntu.com/questions/661039/trouble-with-zip-support-in-custom-python-build-zipimport-zipimporterror-cant

https://stackoverflow.com/questions/37723236/pip-error-while-installing-python-ignoring-ensurepip-failure-pip-8-1-1-requir/37723517#37723517

1.安装zlib

yum install -y zlib
yum install -y zlib-devel
yum install zlib-devel bzip2-devel sqlite sqlite-devel openssl-devel

2.重新编译安装python3.5

/usr/local/lib是之前python3.5的安装路径,使用altinstall增量安装,因此zlib安装路径要和之前的安装路径保持一致

./configure --with-zlib-dir=/usr/local/lib
make
make altinstall

使用下面的语句确保没有报错了

python3.5 -m ensurepip

检查一下,现在的情况如下图。这么说,pip装好了,python2.7和3.5应该都可以用pip了。

What! 为什么还是不能用??

后来发现wget也用不了。。怀疑是机器本身网络有问题!

找了云主机的网络管理员帮忙检查,在开通了防火墙所有进出端口之后,wget好了!pip install好了一半,如下:

 啊!每次以为终于要通关了,却还有新的一关,泪目啊!

我决定先把readline源码包下载了再说,于是:(使用-i指定国内的pip源,下载快啊)

(其实没装pip也完全可以下载啊,找到对应版本包去wget下来就好了嘛)

python3.5 -m pip download readline -i https://pypi.doubanio.com/simple

咱自己编译安装吧,像这样安装python第三方源码包:

tar -xf readline-6.2.4.1.tar.gz
cd readline-6.2.4.1
python setup.py install     #这句最关键

然而还是报错啊,跟之前pip install报错内容一样的。于是又google了一下,参考了这个http://stackoverflow.com/questions/22166277/gcc-error-when-im-trying-to-install-readline-6-2

安装了这些:

yum install -y patch
yum install -y readline-devel   #这个连带装了依赖包ncurses-dev

再次编译安装

python setup.py install

终于安装上了!使用pip list可以列出所有已安装的第三方python包(只包括被pip收录的那些)

 

posted on 2016-08-27 18:14 kayegao 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/huamingao/p/5813523.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值