linux python版本升级

升级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的环境变量

1
2
Could not find platform dependent libraries <exec_prefix>                      
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]

这时你需要设置PYTHONHOME,如果出现下面的错误
‘import site faild’
这时你需要设置PYTHONPATH 。
最好是在你的文件系统的etc目录下的profile文件中加入下面的语句

1
2
3
export PYTHONHOME=/usr/lib/python2.6
export PYTHONPATH=.:$PYTHONHOME:$PYTHONHOME/site-packages
export PATH=$PATH:$PYTHONHOME:$PYTHONPATH

 

你可能感兴趣的:(Linux)