<a href="http://blog.csdn.net/jcjc918/article/details/11022345" target="_blank">http://blog.csdn.net/jcjc918/article/details/11022345</a>
查看python的版本
#python -V
Python 2.6.6
1.下载Python-2.7.3
#wget http://python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
2.解压
#tar -jxvf Python-2.7.3.tar.bz2
3.更改工作目录
4.安装
安装依赖:
yum -y install gcc-c++ readline-devel sqlite-devel bzip2-devel openssl-devel libdbi-devel ncurses-devel zlib-devel gdbm-devel
升级安装zlib
# wget http://sourceforge.net/projects/libpng/files/zlib/1.2.8/zlib-1.2.8.tar.gz
# tar -zxvf zlib-1.2.8.tar.gz
# cd zlib-1.2.8
# ./configure
# make install
#cd Python-2.7.3
#./configure
#make all
#make install
#make clean
#make distclean
5.查看版本信息
#/usr/local/bin/python2.7 -V
6.建立软连接,使系统默认的 python指向 python2.7
#mv /usr/bin/python /usr/bin/python2.6.6
#ln -s /usr/local/bin/python2.7 /usr/bin/python
7.重新检验Python 版本
#python -V
8解决系统 Python 软链接指向 Python2.7 版本后,因为yum是不兼容 Python 2.7的,所以yum不能正常工作,我们需要指定 yum 的Python版本
#vi /usr/bin/yum
将文件头部的
#!/usr/bin/python
改成
#!/usr/bin/python2.6.6
<a href="http://www.zhangchun.org/the-centos6-3-upgrade-python-to-2-7-3-" target="_blank">http://www.zhangchun.org/the-centos6-3-upgrade-python-to-2-7-3-</a>
这篇教程就到这里了,但是不久就突然发现输入法图标不见了,然后打字没有候选框!iBus 崩了!再次进行搜索,又是版本问题 iBus也是不支持Python2.7的啊!
于是。。。
9.配置iBus
分别用 vi 打开下面两个文件,找到 exec python 那一行,把exec python 改为 exec python2.6 保存,退出。iBus在重启后就恢复正常了!是不是很开心?
#vi /usr/bin/ibus-setup
<a></a>
#vi/usr/libexec/ibus-ui-gtk
在编译的时候,Python出现了下面的提示信息:
当然,每个机器上因为不同的配置,编译报错信息也会不同,比如网上有人的报错就是下面这样的:
无论报错信息如何,意思很明确,我们编译的时候,系统没有办法找到对应的模块信息,为了解决这些报错,我们就需要提前安装依赖包,这些依赖包对应列表如下(不一定完全):
模块
依赖
说明
_bsddb
bsddb
Interface to Berkeley DB library。Berkeley数据库的接口
_curses
ncurses
Terminal handling for character-cell displays。
_curses_panel
A panel stack extension for curses。
_sqlite3
sqlite
DB-API 2.0 interface for SQLite databases。SqlLite,CentOS可以安装sqlite-devel
_ssl
openssl-devel.i686
TLS/SSL wrapper for socket objects。
_tkinter
N/A
a thin object-oriented layer on top of Tcl/Tk。如果不使用桌面程序可以忽略TKinter
bsddb185
old bsddb module
老的bsddb模块,可忽略。
bz2
bzip2-devel.i686
Compression compatible with bzip2。bzip2-devel
dbm
Simple “database” interface。
dl
Call C functions in shared objects.Python2.6开始,已经弃用。
gdbm
gdbm-devel.i686
GNU’s reinterpretation of dbm
imageop
Manipulate raw image data。已经弃用。
readline
readline-devel
GNU readline interface
sunaudiodev
Access to Sun audio hardware。这个是针对Sun平台的,CentOS下可以忽略
zlib
Zlib
Compression compatible with gzip
在CentOS下,可以安装这些依赖包:readline-devel,sqlite-devel,bzip2-devel.i686,openssl-devel.i686,gdbm-devel.i686,libdbi-devel.i686,ncurses-libs,zlib-devel.i686。完成这些安装之后,可以再次编译,上表中指定为弃用或者忽略的模块错误可以忽略。
在编译完成之后,就可以接着上面的第六步安装Python到指定目录下。安装完成之后,我们可以到安装目录下查看Python是否正常安装。
1. 我们进入到安装路径下的bin目录, 并查看安装的版本(版本是2.7.6)
2. 将现有的python版本重命名备份
3. 创建新版本Python到 <code>/usr/bin</code> 目录下替代原有python
4. 测试系统Python版本(应该是新的2.7.6)
5. 此时如果yum不能正常工作,可以简单的通过sed将里面的Python引用替换成原来的Python路径即可。
至此,完成Python的更新编译安装工作。如果你想完成自动安装,可以将前面的代码保存为Shell脚本文件——需要注意的是,你可能需要添加各个模块的安装脚本,本篇的是通过yum来安装的。也可以通过参考2中的文章,文中包含自动安装的脚本文件。
本文转自 yntmdr 51CTO博客,原文链接:http://blog.51cto.com/yntmdr/1747460,如需转载请自行联系原作者