CentOS 安装 Python 3.11.9完整流程

在 CentOS 上安装 Python 3.11.9 并替换系统中的默认 Python 版本,可以按照以下步骤来进行。请注意,替换默认 Python 版本可能会影响系统的其他工具和依赖,因此请谨慎操作。

步骤 1:安装依赖

首先,确保系统安装了编译 Python 所需的依赖:

bash 复制代码
sudo yum groupinstall -y "Development Tools"
sudo yum install -y gcc openssl-devel bzip2-devel libffi-devel zlib-devel

步骤 2:下载并解压 Python 3.11.9 源码

前往 Python 官方下载页面 下载 Python 3.11.9 的源码包,或者使用以下命令下载并解压:

bash 复制代码
cd /usr/src
wget https://www.python.org/ftp/python/3.11.9/Python-3.11.9.tar.xz
tar -xJf Python-3.11.9.tar.xz
cd Python-3.11.9

步骤 3:编译并安装 Python

编译安装 Python 3.11.9:

bash 复制代码
./configure --enable-optimizations
make -j $(nproc)
sudo make altinstall

注意 :我们使用 make altinstall 而不是 make install,以避免覆盖系统自带的 python 二进制文件。安装完成后,Python 3.11.9 会以 python3.11 的形式存在于 /usr/local/bin/ 目录下。

步骤 4:更新默认 Python 版本

替换 python3 的符号链接

将系统中默认的 python3 链接到新安装的 Python 3.11.9:

bash 复制代码
sudo ln -sf /usr/local/bin/python3.11 /usr/bin/python3
替换 pip3 的符号链接

同样地,将 pip3 链接到 Python 3.11.9 版本:

bash 复制代码
sudo ln -sf /usr/local/bin/pip3.11 /usr/bin/pip3

步骤 5:验证安装

检查 Python 版本:

bash 复制代码
python3 --version
pip3 --version

应该输出 Python 3.11.9 和对应的 pip 版本信息。

注意事项

  1. 系统兼容性 :CentOS 的许多系统工具(例如 yum)依赖于 Python 2.x。直接替换 /usr/bin/python 可能会导致系统工具异常。因此推荐只修改 python3 链接,而保留 /usr/bin/python 指向 Python 2.x。

  2. 创建虚拟环境 :如果您的项目或工具需要不同的 Python 版本或模块,建议使用 virtualenv 或 venv 创建隔离环境,以减少对系统 Python 版本的依赖。

相关推荐
全栈练习生6 小时前
AI Agent 沙箱
python·ai
SEO_juper7 小时前
用 Python 写一个 GEO 可见性检查脚本:你的网站现在能被 AI 引用吗
开发语言·人工智能·爬虫·python·seo·外贸独立站
用户8356290780518 小时前
使用 Python 对 Excel 工作表进行排序
后端·python
for_ever_love__9 小时前
MySQL 全文索引实战:FULLTEXT、ngram 中文分词与 MATCH AGAINST 到底该怎么用
java·python·mysql·全文检索·分词·索引·ngram
用户8356290780519 小时前
使用 Python 合并 PowerPoint 演示文稿
后端·python
weixin_461769409 小时前
VS Code 中创建 Jupyter 文件(.ipynb)
ide·python·jupyter
2601_966949659 小时前
多市场量化策略的数据接口应该如何设计:从数据层架构到策略接入
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
全栈弄潮儿10 小时前
Python实战第1期:Python环境搭建与第一个程序
python
心易行者10 小时前
Agent应用+API端点商业化进阶实战:从单体智能体到可付费调用的API全流程
运维·服务器·人工智能·python·apache
weixin1997010801610 小时前
《1688图片空间API踩坑:img.upload 与 album.* 的防盗链与CDN缓存问题》(附Python源码)
开发语言·python·缓存