CentOS 升级Python2.6 到 2.7

因为CentOS系统中旧版本的Python已被深度依赖,所以不能卸载原有的Python,只能全新安装。


1.下载Pyhon,选择下载Gzipped source tar ball (2.7.11) (sig)

网址https://www.python.org/download/releases/2.7.11

2.解压安装,命令如下

tar -xvfPython-2.7.11.tgz

cd Python-2.7.11

./configure --prefix=/usr/local/python2.7 ----enable-shared

make

make install

这里加了configure的时候加了--enable-shared参数,主要是为了让其他软件共享python的动态链接库,后续安装mod_wsgi模块的时候用的上。安装完后运行python会提示:

error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory


解决方法如下:
(1).编辑 vi /etc/ld.so.conf
如果是非root权限帐号登录,使用 sudovi /etc/ld.so.conf
添加上python2.7的lib库地址,如我的/usr/local/python2.7/lib,保存文件

(2).执行/sbin/ldconfig -v命令,如果是非root权限帐号登录,使用 sudo/sbin/ldconfig -v。这样 ldd 才能找到这个库,执行python2.7就不会报错了

(/etc/ld.so.conf:
这个文件记录了编译时使用的动态链接库的路径。
默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件
如果你安装了某些库,没有指定 --prefix=/usr 这样lib
库就装到了/usr/local下,而又没有在/etc/ld.so.conf中添加/usr/local/lib,就会报错了)

3.创建链接来使系统默认python变为python2.7

ln -fs /usr/local/python2.7/bin/python2.7 /usr/bin/python


4.修改yum配置(否则yum无法正常运行)

vi /usr/bin/yum

将第一行的#!/usr/bin/python修改为系统原有的python版本地址#!/usr/bin/python2.6

相关文章

#使用军哥的lnmp配置虚拟主机,需要注意的是要配置hosts文件(...
一、配置编译环境 yum update && yum upgra...
一、下载repo文件 二、备份并替换系统的repo文件 三、执行yu...
LAMP -- Linux Apache MySQL PHP 在CentOS安装的顺序,我一般...
一、下载nginx安装包,官网下载中心http://nginx.org/downlo...
1.下载composer curl -sS https://getcomposer.org/installe...