linux centos 从 python2.4到python2.7版本升级

[ 2016-11-23 14:40:10 | 作者: admin ]
字号: | |
升级Python版本的时候千万不能卸载python 2.4,再安装python2.7,这样会有无穷无尽的麻烦,保守的方式
是直接安装python2.7的源码包,也就是python两个版本共存。(因为Centos里面有很多程序是依赖着python,
所有最好不要尝试去卸载python2.4)。

安装python需要用到gcc工具,首先查看gcc是否安装
# gcc -v
如果未安装则使用yum命令安装
# yum -y install gcc
下载最新安装python包
# wget http://python.org/ftp/python/2.7.6/Python-2.7.6.tgz
解压包
# tar -xzvf Python-2.7.6.tgz
编译安装
# ./configure --prefix=/usr/local/python2.7
# make && make install
建立软连接,使系统默认的python指向python2.7
正常情况下即使python2.7安装成功后,系统默认指向的python仍然是2.4.3版本
如何实现将系统默认的python指向到2.7版本呢?
# mv /usr/bin/python /usr/bin/python.bak
# ln -s /usr/local/python2.7/bin/python2.7 /usr/bin/python # 添加软连接
如果是默认安装路径则使用下面命令
# ln -s /usr/local/bin/python2.7 /usr/bin/python
检验python指向是否成功
# python -v

注意以后安装的python工具包例如easy_install,pip等,都会安装在/usr/local/python2.7/bin 目录下
要想直接使用这些命令还需要把/usr/local/python2.7/bin添加到$PATH变量中
1、编辑/etc/profile文件(永久生效)
找到export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL这行上面加入
PATH=$PATH:/usr/local/python2.7/bin
重新初始化文件,使文件立即生效
source /etc/profile or . /etc/profile
2、在用户目录下的~/.bash_profile文件中增加变量,对单一用户生效(永久的)
3、在shell的命令行下直接使用[export PATH=$PATH:/usr/local/python2.7/bin]定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了(临时的)


修复不能正常工作的yum,如果有使用yum的话会发现出错,这是因为yum 依赖2.4.3而现在默认的 Python 版本是2.7.6。
# vi /usr/bin/yum
将首行显示的 !#/usr/bin/python 修改为 !#/usr/bin/python2.4
 
如果出现python不能运行的情况很可能是缺少相应的库,你需要到你的交叉编译环境中去拷相应的库文件。
如果出现下面的错误提示就是你没有设置python的环境变量
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
这时你需要设置PYTHONHOME,如果出现下面的错误
‘import site faild’
这时你需要设置PYTHONPATH 。
最好是在你的文件系统的etc目录下的profile文件中加入下面的语句
export PYTHONHOME=/usr/lib/python2.6
export PYTHONPATH=.:$PYTHONHOME:$PYTHONHOME/site-packages
export PATH=$PATH:$PYTHONHOME:$PYTHONPATH
[最后修改由 admin, 于 2017-04-18 15:39:29]
评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2360

这篇日志没有评论。

此日志不可发表评论。