安装依赖
yum -y xxx xxx -y表示自动确认
gcc --versions
如果没有,则安装gcc
yum -y install gcc
安装必要依赖
yum -y install zlib*
yum -y install libffi-devel
yum -y install openssl-devel
如果 没有wget,还需安装
yum -y install wget
下载 python3
以下载python3.10.6为例
切换到下载路径
cd ~
wget https://www.python.org/ftp/python/3.10.6/Python-3.10.6.tgz
编译安装
tar -zxvf Python-3.10.6.tgz
解压后,查看多个一个Python-3.10.6的文件夹
[root@l7tanbvoehwmjrgt ~]# ls
Python-3.10.6 Python-3.10.6.tgz
[root@l7tanbvoehwmjrgt ~]#
新建一个python3的安装目录(位置可自定义)。
cd /usr/lib
mkdir python3.10
进入下载解压的Python-3.10.0目录下,「指定安装目录,设置启用ssl功能」。
cd ~
cd Python-3.10.6
./configure --prefix=/usr/lib/python3.10 --with-ssl
make && make install
创建软连接
建立安装包下python3.10到 /usr/bin下python3 及 pip3的连接,以便命令行使用
ln /usr/lib/python3.10/bin/python3.10 /usr/bin/python3
ln /usr/lib/python3.10/bin/pip3.10 /usr/bin/pip3
ln -s /usr/bin/pip3 /usr/bin/pip
删除原来centos7默认的python 到python2.7的连接,重写创建到python的软连接
rm -f /usr/bin/python
ln -s /usr/bin/python3 /usr/bin/python
至此 已配置完毕,使用吧。
[root@l7tanbvoehwmjrgt Python-3.10.6]# python --version
Python 3.10.6
[root@l7tanbvoehwmjrgt Python-3.10.6]# pip --version
pip 22.2.1 from /usr/lib/python3.10/lib/python3.10/site-packages/pip (python 3.10)
[root@l7tanbvoehwmjrgt Python-3.10.6]#
修改yum
Linux centos7自带的python版本是2.7,yum使用python2.7作为命令解释器。安装python3后,软连接/usr/bin/python指向的版本是python3,不修改yum的配置,会导致yum使用报错,无法安装包等。
「报错信息1:」
[root@l7tanbvoehwmjrgt Python-3.10.6]# yum
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
^^^^^^^^^^^^^^^^^^^^
SyntaxError: multiple exception types must be parenthesized
[root@l7tanbvoehwmjrgt Python-3.10.6]# vi /usr/bin/yum
修改yum配置文件,下面两个文件都要修改。
vi /usr/bin/yum
vi /usr/libexec/urlgrabber-ext-down
按i进入编辑模式,在第一行#!/usr/bin/python把修改为#!/usr/bin/python2.7,
按ESC退出编辑模式,:wq退出保存。