centos7 安装python3.10及配置软连接

目录

  • 安装依赖
  • 下载 python3
  • 编译安装
  • 创建软连接
  • 修改yum

安装依赖

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退出保存。

你可能感兴趣的:(操作系统,python,linux)