感谢:http://blog.mymusise.com/?p=9
先声明下,本以为在centos下升级python很easy,,没想到是个大坑。有的能装好,但是不能用。各种缺失吧,非常蛋疼。
下面整理下思路,从python2.6.X升级到python2.7.9,同时安装了setuptools以及pip
1、从python2.6.X升级python到2.7.9
CentOS 6.X默认的Python版本都是2.6 ,需要升级到2.7以及安装pip方法如下:
准备:
yum install bzip2 bzip2-devel -y yum install zlib zlib-devel -y yum install openssl openssl-devel -y
下载python2.7源码,编译安装:
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz tar zxvf Python-2.7.9.tgz cd Python-2.7.9 ./configure make -j4 make install然后需要配置一下
# 建立软链接,默认指向Python2.7 mv /usr/bin/python /usr/bin/python2.6_temp ln -s /usr/local/bin/python2.7 /usr/bin/python python -V # Python 2.7.9 # yum不兼容Python2.7,需要指定为原版本 vi /usr/bin/yum # 将"!/usr/bin/python"改为"!/usr/bin/python2.6" # 环境变量 vi /etc/profile # 添加如下内容: PY_HOME=/usr/local/bin/python2.7 export PATH=$PY_HOME/bin:$PATH source /etc/profile # 当前终端生效,reboot后才会完全生效 echo $PATH如果你升级python失败,用这个方法,这个方法可以直接搞定!
解决交互式乱码问题 (参考 http://blog.csdn.net/clevercode/article/details/45438747)2)解决方案。
这个问题主要是由于缺少readline Module问题导致的。而CentOS默认只有readline模块而没有readline-devel开发模块。所以只要安装下即可。
# yum -y install readline-devel重新编译安装python
# cd Python2.9 #回到解压目录
# ./configure
# make #编译
# make install 安装搞定2、安装setuptoolswget https://pypi.python.org/packages/6b/dd/a7de8caeeffab76bacf56972b3f090c12e0ae6932245abbce706690a6436/setuptools-28.3.0.tar.gz#md5=a46750b6bd90a1343466bd57b0e2721atar zxvf setuptools-28.3.0.tar.gz cd setuptools-28.3.0 python setup.py install3、安装pipwget https://pypi.python.org/packages/e7/a8/7556133689add8d1a54c0b14aeff0acb03c64707ce100ecd53934da1aa13/pip-8.1.2.tar.gz#md5=87083c0b9867963b29f7aba3613e8f4 tar pip-8.1.2.tar.gz tar zxvf pip-8.1.2.tar.gz cd pip-8.1.2 python setup.py install