一、python2.6升级至Python2.7
1.查看当前python版本
$ python -V
$ python 2.6.6
2.下载Python-2.7.12
$ wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
- 1
3.解压缩并更改工作目录
$ tar zxvf Python-2.7.12.tgz
$ cd Python-2.7.12
4.安装
$ ./configure
$ sudo make all
$ sudo make install
$ sudo make clean
$ sudo make disclean
5.查看版本信息
$ /usr/local/bin/python2.7 -V
- 1
6.简历软连接,使系统默认的python指向python2.7
$ sudo mv /usr/bin/python /usr/bin/python2.6.6 #备份
$ sudo ln -s /usr/local/bin/python2.7 /usr/bin/python # 建立软连接
- 1
7.重新检验Python版本
$ python -V
$ sudo python -V
- 1
需要注意的是,可能会出现普通用户的python和sudo的python版本不同的情况,此时要检查一下软连接的建立是否正确,不然,在接下来使用sudo python setup.py install 安装package的时候会安装到Python2.6里。
我就是遇到了这个问题,网上建议的解决方法是使用sudo -i python setup.py install使其寻址到python2.7,或者直接指定python2.7的位置。在我尝试了sudo -i python -V这个命令,发现结果依然是python 2.6.6之后,便放弃了sudo -i的方法,然后重新做了一次软连接,虽然好像我两次做的完全一样,但不知道为什么,成功使得sudo python -V的结果也是python 2.7.12了。
8.指定yum的Python版本
由于系统python软连接指向python2.7之后,yum将无法正常工作,出现“No module named yum”的报错。
解决方式如下:
$ sudo vim /usr/bin/yum
- 1
将文件头部的
#!/usr/bin/python
- 1
改为
#!/usr/bin/python2.6.6
- 1
- 2
二、安装setuptools和pip
wget https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz --no-check-certificate
python setup.py install
“ImportError: No module named setuptools”提示我们没有由于没有安装setuptools,使得pip安装失败,看来只有先安装setuptools:
wget https://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg --no-check-certificate
sh setuptools-0.6c11-py2.7.egg
yum -y install zlib*
Modules/Setup.dist 去注释
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
python文件夹 make && make install
sh setuptools-0.6c11-py2.7.egg 将会成功
去pip解压的文件夹里面 python setup.py install。
发现报错找不到 pip 7.0.7或者其他版本
wget http://pypi.python.org/packages/source/d/distribute/
下载文件解压,python setup.py 安装
然后easy_install pip==7.1.0
然后执行pip 返现httphandelr找不到
yum install openssl-devel -y
最终pip可以使用了
-----------
这个时候别太嚣张,突然发现pip升级之后用不了,/usr/local/bin/pip 里面可以修改所需的pip版本,但是没用。
这个时候yum remove python-pip之后再easy_install pip==18.0
然后/usr/bin生成超链接就可以了。