一、下载python
# wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgzcentos
二、解压spa
# tar -xvf Python-3.7.0.tgz get
三、编译、安装源码
# mkdir /usr/local/python3 it
#yum -y install perl gcc make kernel-headers kernel-devel编译
# yum -y install libffi-devel class
# yum -y install zlib*module
# cd Python-3.7.0兼容性
# ./configure --prefix=/usr/local/python3
# make && make install
四、创建新版本的连接
# mv /usr/bin/python /usr/bin/python2.6.6
# ln -s /usr/local/python3/bin/python3 /usr/bin/python
# python -V
Python 3.7.0
在rhel6中安装python3.7的时候报以下错误
ModuleNotFoundError: No module named ‘_ctypes‘报错
是因为缺乏libffi-devel开放库致使,可经过一下方法安装
rpm -ivh http://mirror.centos.org/centos/6/os/x86_64/Packages/libffi-devel-3.0.5-3.2.el6.x86_64.rpm
从新编译安装python源码包便可
python升级带来的yum异常
# 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.0版本之间存在语法不一致问题。而CentOS 6自带的yum采用的是python2.6,当系统将python升级到3.0后,出现语法解释错误。
解决办法:
很简单,一是升级yum,一是修改yum的解释器为旧版本python2.6(若是你没有采用覆盖升级的话)
升级yum的做法就不详述了;
修改yum的解释器为旧版本python2.6:
vi /usr/bin/yum
将第一行"#!/usr/bin/python" 改成 "#!/usr/bin/python2.6"便可
在Linux系统下 Python Shell 使用方向键会出现^[[A ^[[B ^[[C ^[[D的状况,这时咱们须要安装readline
#yum -y install readline-devel
而后从新编译,安装
#./configure --prefix=/usr/local/python3
# make && make install