- 安装环境
yum install gcc
yum install zlib-devel
yum install make
yum install readline-devel - 下载python版本
wget http://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz - 解压缩、编译和安装
tar -zxvf Python-3.4.0.tgz
cd Python-3.4.0
./configure –prefix=/opt/python3
make all
make install
清除之前编译的可执行文件及配置文件。
make clean
清除所有生成的文件
make distclean - 查看安装的新版本信息
/opt/python3/bin/python3 -V
Python 3.4.0
由此看出编译安装的新版本python生效了 做个软连接到当前用户的bin目录
此时,新版本的python没有覆盖原来的版本,先将原来的python重命名
mv /usr/bin/python /usr/bin/python_old
重新建立超链接
ln -s /opt/python3/bin/python3 /usr/bin/python3
再次打开python则显示新版本
pythonPython 3.4.3 (default, Oct 12 2015, 21:31:59)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux
Type “help”, “copyright”, “credits” or “license” for more information.- 升级安装好新版本python以后,默认依然是python2.6
vi /usr/bin/yum
将文件头部的#!/usr/bin/python修改为 #!/opt/python3/bin/python3或#!/usr/bin/python3即可。
说明
问题一:
python3命令进入到交互界面,结果发现,退格键,方向键等好多键都不能正常使用,
解决办法:
安装readline-devel修复解决
问题二:
yum
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
^
SyntaxError: invalid syntax
原因:
这是因为yum采用python作为命令解释器,这可以从/usr/bin/yum文件中第一行#!/usr/bin/python发现。而python版本之间兼容性不太好,使得2.X版本与3.X版本之间存在语法不一致问题。当系统将python升级到3.X后,出现语法解释错误。
解决办法:
很简单,一是升级yum,一是修改yum的解释器为旧版本python2.6(如果你没有采用覆盖升级的话)。
升级yum的作法就不详述了。修改yum的解释器为旧版本python2.6:
$ vi /usr/bin/yum
将第一行”#!/usr/bin/python” 改为 “#!/usr/bin/python_old”即可。