CentOS 7安装 Python 3.11

前言

        CentOS 中升级 Python 版本到Python 3.11,需要使用一些额外的步骤,因为 CentOS 的标准仓库通常不会包括最新的 Python 版本。以下是一个一般过程,但请注意,直接升级系统 Python 可能会对系统工具产生不良影响,因为它们可能依赖于特定版本的 Python。


        在 Linux 系统上升级 Python 到特定版本,通常有多种方式。以下是常见的方法之一,使用源代码编译安装:

一、安装编译依赖

        在编译 Python 之前,需要确保你的系统有编译所需的包。尝试安装所有常见的开发库,以确保不缺少任何编译 Python 所需的依赖:

sudo yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel

sudo yum groupinstall "Development Tools"

构建 Python 3.11 需要openssl 1.1.1或更新版本。

如系统中使用的openssl是旧版本建议升级版本openssl版本。下述是根据源码操作步骤:

wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz #下载
tar -zxvf openssl-1.1.1w.tar.gz #解压
cd openssl-1.1.1w
#编译和安装
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared
make
sudo make install
# 备份一下旧版
mv /usr/bin/openssl /usr/bin/openssl.bak
# 建立新的软链接
ln -s /usr/local/openssl /usr/bin/openssl
# 编辑ld.so.conf,如没有/usr/local/lib 则新增
vi /etc/ld.so.conf
# 加载新配置
ldconfig
openssl version #查看版本

如出现下述问题 :

error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1

 error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory

ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

二、下载 Python 源代码

访问 Python 官方网站或使用 wget 下载 Python 3.11.7 的源代码:

wget https://www.python.org/ftp/python/3.11.7/Python-3.11.7.tgz

三、解压源代码

解压下载的文件:

tar -xf Python-3.11.7.tgz

四、准备编译环境

配置 Python 源码用于编译:

cd Python-3.11.7
LDFLAGS="${LDFLAGS} -Wl,-rpath=/usr/local/openssl/lib" ./configure --with-openssl=/usr/local/openssl

五、编译和安装 Python

编译并安装 Python:

lscpu #查看linux服务器cpu
make -j 8  # 使用8个核心来编译,根据你的CPU调整这个值

六、验证安装

安装完成后,可以检查新安装的 Python 版本:

python3.11 --version

python3.11

总结

        请注意,如果在一个生产环境或者对稳定性要求很高的环境中操作,建议使用系统的包管理器或者虚拟环境,以免影响系统中其他的 Python 应用程序。此外,根据你的 Linux 发行版,可能有更简单的方法来安装最新版本的 Python,例如使用conda, pyenv, 或者某些发行版特定的第三方库。CentOS 7 及以前版本可能不会支持 Python 3.11 的一些特性。如果你遇到任何问题,检查 CentOS 和 Python 的兼容性问题。

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fashionable ape man

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值