centos 7使用源码编译安装Python 3.12.2(最新版本)

(一)、说明

在centos 7上,默认安装出来的python是:2.7.5版本

1.查看python版本:
复制代码
python --version
2.通过yum安装出来的,适合当前操作系统的,最新的python版本是:3.6.8
复制代码
python3 --version

效果如下:

这个时候,想要把python升级到最新的版本,该怎么操作?

本文介绍通过源码的方式,升级python3到最新的版本。

(二)、安装

1.安装编译依赖:
复制代码
sudo yum groupinstall -y "Development Tools"

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
2.下载Python源代码:

1、访问 Python 官方网站下载页面

2、选择 Python 3.12 的源码压缩包,Python3.12...tgz

3、使用 wget 命令下载源码包:

复制代码
wget https://www.python.org/ftp/python/3.12.3/Python-3.12.3.tgz
3.解压并编译:

解压下载的源代码包

复制代码
tar xvf Python-3.12.3.tgz

进入目录

复制代码
cd Python-3.12.3

查看目录下的文件:

配置并编译Python

复制代码
./configure --enable-optimizations --prefix=/usr/local/python3.12

安装Python

复制代码
make
sudo make altinstall

使用make altinstall而不是make install以避免覆盖系统默认的Python版本。

(三)、验证安装

检查版本:

复制代码
python3.12 --version

或者:

复制代码
/usr/local/python3.12/bin/python3.12 --version

至此Python-3.12.3安装完成,下面可选择研究。

(四)、配置环境变量

如果需要将新安装的Python添加到系统的PATH中,可以编辑.bashrc文件或者其他Shell配置文件,并添加以下行:

复制代码
export PATH="/usr/local/bin:$PATH"

保存文件并执行以下命令使配置生效:

复制代码
source ~/.bashrc

(五)、更新软链接

当你使用make altinstall安装Python时,Python解释器通常被安装在/usr/local/bin目录下,并且会创建一个带有版本号的软链接。

1. 查找Python的安装路径:
复制代码
which python3.12

通常情况下,它应该位于/usr/local/bin/python3.12

2.更新软链接:
复制代码
sudo ln -sf /usr/local/bin/python3.12 /usr/local/bin/python3
sudo ln -sf /usr/local/bin/python3.12 /usr/local/bin/python

这将创建python3python的软链接指向新安装的Python版本。

3.验证软链接:
复制代码
python3 --version

现在python3命令应该会指向Python 3.12.3版本。

4.更新pip命令的软链接

如果你也想更新pip命令的软链接,可以执行以下命令:

复制代码
sudo ln -sf /usr/local/bin/pip3.12 /usr/local/bin/pip3
sudo ln -sf /usr/local/bin/pip3.12 /usr/local/bin/pip

这样就更新了pip3pip命令的软链接指向新的Python版本的pip。注意权限问题。

相关推荐
Pocker_Spades_A5 小时前
Python快速入门专业版(二十九):函数返回值:多返回值、None与函数嵌套调用
服务器·开发语言·python
STCNXPARM5 小时前
深度剖析Linux内核无线子系统架构
linux·运维·系统架构·wifi·无线子系统
yunpeng.zhou5 小时前
logging 模块升级版 loguru
python
kida_yuan6 小时前
【从零开始】14. 数据评分与筛选
python·数据分析·nlp
烟雨书信6 小时前
LINUX中Docker Swarm的介绍和使用
java·linux·docker
小李独爱秋6 小时前
特征值优化:机器学习中的数学基石
人工智能·python·线性代数·机器学习·数学建模
代码的余温7 小时前
Linux内核调优实战指南
linux·服务器·数据库
TwoAI7 小时前
Matplotlib:绘制你的第一张折线图与散点图
python·matplotlib
is08157 小时前
NFS 服务器 使用
服务器·网络
摸鱼仙人~7 小时前
一文详解 Python 密码哈希库 Passlib
开发语言·python·哈希算法