
网上关于升级python的教程还是很多的,但这些教程大多写得比较简单,只是直接编译安装python,最多修改一下yum的配置文件。然而这种安装方法可能会存在一些的问题和后遗症,这里给一个相对完善一点的升级方案,供参考。
首先检查python的版本,centos6自带python,但通常版本较低
# python -V
检查gcc
# gcc -v
不同安装方式的centos可能带gcc也可能不带,如果没有gcc,则需要安装
# yum install -y gcc
安装完成后,我们来确定python的安装位置,本次准备安装在 /usr/local/
# cd /usr/local
下载新版本的python,本次安装python 2.7.3,直接从官方下载
# wget
http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz
解压至当前文件夹
# tar zxf Python-2.7.3.tgz
重命名文件夹
# mv Python-2.7.3 ./python
注意:先不要着急编译安装,先把zlib装上。python重新安装不能直接继承旧版本的库和工具,我们还有很多包要安装。
安装 zlib-devel
# yum install zlib.x86_64
# yum install zlib-devel.x86_64
编译安装
# pwd
/usr/local/python
# ./configure --prefix=/usr/local/python
# make
# make install
软连接
# mv /usr/bin/python /usr/bin/python_old
# ln -s /usr/local/python/bin/python2.7 /usr/bin/python
修改yum配置
# vi /usr/bin/yum
将文件头部的
#!/usr/bin/python
修改为
#!/usr/bin/python2.6
注意:很多升级python的文章,写到这里就结束了。如果只是用一下python的运行环境,到这一步确实就可以了,但python重新安装后是不能直接继承旧版本的库和工具的。如果你需要管理包,使用python命令行,使用SQLite的话,还需要进行以下工作。
安装 openssl,这一步是为了安装pip,不然安装pip的时候会报错
# yum install openssl openssl-devel
安装 readline-devel,不然在python命令行中使用方向键会识别成^[[D ^[[A等字符,导致无法使用
# yum install readline-devel
在升级了python之后,原来的sqlite也会变得不可用,需要重新安装。
安装 python-sqlite2,这个包是python与sqlite的接口
# yum install python-sqlite2.x86_64
安装 sqlite-devel,为了python可以正常使用sqlite
# yum install sqlite-devel
回到python目录下重新编译安装python
# cd /usr/local/python
# make
# make install
安装 pip,因为我们安装的是python 2.7.3,这个版本不自带pip,所以我们要手动安装。
# wget https://bootstrap.pypa.io/get-pip.py
# python ./get-pip.py
# ln -s /usr/local/python/bin/pip /usr/bin/pip
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30109892/viewspace-2090698/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30109892/viewspace-2090698/