CENTOS7 安装Python3.7.0
一、环境检查
1. 操作系统
1 [root@iZuf6ac2xjnladzjv7fbo8Z bin]# cat /etc/os-release 2 NAME="CentOS Linux" 3 VERSION="7 (Core)" 4 ID="centos" 5 ID_LIKE="rhel fedora" 6 VERSION_ID="7" 7 PRETTY_NAME="CentOS Linux 7 (Core)" 8 ANSI_COLOR="0;31" 9 CPE_NAME="cpe:/o:centos:centos:7" 10 HOME_URL="https://www.centos.org/" 11 BUG_REPORT_URL="https://bugs.centos.org/" 12 13 CENTOS_MANTISBT_PROJECT="CentOS-7" 14 CENTOS_MANTISBT_PROJECT_VERSION="7" 15 REDHAT_SUPPORT_PRODUCT="centos" 16 REDHAT_SUPPORT_PRODUCT_VERSION="7" 17 18 19 [root@iZuf6ac2xjnladzjv7fbo8Z bin]# uname -a 20 Linux iZuf6ac2xjnladzjv7fbo8Z 3.10.0-693.2.2.el7.x86_64 #1 SMP Tue Sep 12 22:26:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
2. 已安装的Python
1 [root@iZuf6ac2xjnladzjv7fbo8Z bin]# python --version 2 Python 2.7.5
二、源码安装
1. 获取Python3.7的源码。下载地址:https://www.python.org/ftp/python/3.7.1/Python-3.7.1rc2.tgz
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1rc2.tgz
2. 解压源代码
[root@iZuf6ac2xjnladzjv7fbo8Z ~]# tar zxvf Python-3.7.1rc2.tgz
3. 进入源代码目录
[root@iZuf6ac2xjnladzjv7fbo8Z ~]# cd Python-3.7.1rc2
4. 编译和安装
# 将python3.7安装到/usr/local/python3目录下 # ./configure 是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。最后会产生一个Makefile文件,供make使用 [root@iZuf6ac2xjnladzjv7fbo8Z Python-3.7.1rc2]# ./configure --prefix=/usr/local/python3 --enable-optimizations # 编译源代码 # make 是用来编译的,它从Makefile中读取指令,然后编译。 [root@iZuf6ac2xjnladzjv7fbo8Z Python-3.7.1rc2]# make # 安装 # make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。 [root@iZuf6ac2xjnladzjv7fbo8Z Python-3.7.1rc2]# make install
5.测试
#进入python3安装目录 [root@iZuf6ac2xjnladzjv7fbo8Z Python-3.7.1rc2]# cd /usr/local/python3 #测试版本 [root@iZuf6ac2xjnladzjv7fbo8Z python3]# bin/python3 -V Python 3.7.1rc2
三、替换python2
1.进入到/usr/bin目录下,可以看出python命令是一个指向python3的软连接
# 进入到/usr/bin的目录下面 [root@iZuf6ac2xjnladzjv7fbo8Z python3]# cd /usr/bin # 查看python的状况 # 可以看出只有python2.7是可执行文件,而python、python3都是指向python2.7的软连接 [root@iZuf6ac2xjnladzjv7fbo8Z bin]# ls -al python* lrwxrwxrwx. 1 root root 7 Oct 15 2017 python -> python2 lrwxrwxrwx. 1 root root 9 Oct 15 2017 python2 -> python2.7 -rwxr-xr-x. 1 root root 7136 Aug 4 2017 python2.7
2.将原来的python进行更名,然后新建python,指向python3
#备份原来的软连接 [root@iZuf6ac2xjnladzjv7fbo8Z bin]# mv python python.bak #查看python3的可执行文件 [root@iZuf6ac2xjnladzjv7fbo8Z bin]# ls /usr/local/python3/bin 2to3 idle3.7 pydoc3.7 python3.7m pyvenv-3.7 2to3-3.7 pip3 python3 python3.7m-config easy_install-3.7 pip3.7 python3.7 python3-config idle3 pydoc3 python3.7-config pyvenv #创建python软连接,指向python3.7 [root@iZuf6ac2xjnladzjv7fbo8Z bin]# ln -s /usr/local/python3/bin/python3.7 /usr/bin/python
3. 测试
# 大功告成啦~ [root@iZuf6ac2xjnladzjv7fbo8Z bin]# python -V Python 3.7.1rc2
四、入坑系列
1. 安装过程中依赖包问题
在make install 过程中,会发现某些依赖包找不到,请安装依赖包,然后再次执行make install
#安装依赖包样例 [root@iZuf6ac2xjnladzjv7fbo8Z Python-3.7.1rc2]# yum -y install zlib* libffi libffi-devel # 再次安装 [root@iZuf6ac2xjnladzjv7fbo8Z Python-3.7.1rc2]# make install
浙公网安备 33010602011771号