CentOS 7安装Python3.12

文章目录


使用pyenv安装python3.12


一、gitub下载pyenv

https://github.com/pyenv/pyenv

按照README,pyenv教程安装即可

二、升级GCC

安装依赖

bash 复制代码
yum install centos-release-scl -y

手动修改库地址

/etc/yum.repos.d/CentOS-SCLo-scl-rh.repo

bash 复制代码
[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=http://vault.centos.org/centos/7/sclo/$basearch/rh/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo

/etc/yum.repos.d/CentOS-SCLo-scl-rh.repo

bash 复制代码
[centos-sclo-sclo]
name=CentOS-7 - SCLo sclo
baseurl=http://vault.centos.org/centos/7/sclo/$basearch/rh/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo

更新yum库

bash 复制代码
yum clean all yum makecache

安装并开启GCC11

bahs 复制代码
yum install devtoolset-11 -y scl enable devtoolset-11 bash

三.升级openssl

Python 3.10+ 需要 OpenSSL 1.1.1+,但 CentOS 7 默认的 OpenSSL 版本是 1.0.2,需手动升级
步骤 1:从源码编译 OpenSSL 1.1.1

bash 复制代码
# 下载 OpenSSL 1.1.1
wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz
tar -xzf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w

# 编译安装到 /opt/openssl
./config --prefix=/opt/openssl --openssldir=/opt/openssl
make -j$(nproc)
sudo make install

# 添加动态库路径
echo '/opt/openssl/lib' | sudo tee /etc/ld.so.conf.d/openssl-1.1.1.conf
sudo ldconfig

步骤 2:验证 OpenSSL 版本

bash 复制代码
/opt/openssl/bin/openssl version
# 输出应为 OpenSSL 1.1.1w

步骤 3:设置编译环境变量

在编译 Python 时,通过环境变量指定 OpenSSL 路径:

bash 复制代码
export CPPFLAGS="-I/opt/openssl/include"
export LDFLAGS="-L/opt/openssl/lib"
export LD_LIBRARY_PATH="/opt/openssl/lib:$LD_LIBRARY_PATH"

步骤 4:安装 Python 3.12

bash 复制代码
pyenv install 3.12.9 --verbose

步骤 5:验证

bash 复制代码
[root@...] pyenv global 3.12
[root@...] python3
Python 3.12.9 (main, Apr  8 2025, 15:37:15) [GCC 11.2.1 20220127 (Red Hat 11.2.1-9)] on linux
Type "help", "copyright", "credits" or "license" for more information.

这样python3.12.9就完成安装在CentOS上啦!

相关推荐
梦帮科技2 分钟前
Web 漏洞攻防深度:WAF 规则逃逸技术(畸形分块传输、双重编码)与对抗加固
linux·前端·网络安全·ssl·web
喵本喵叁肆4 分钟前
diffprivlib 中文实战教程 · 第8讲:实战——从零改造一个 DP 模型
python·neo4j·差分隐私
for_ever_love__7 分钟前
忠实度(Faithfulness):怎么判断 RAG 的答案有没有瞎编
linux·rag·评估·答案·faithfulness·原文·忠实度
Smoothcloud润云8 分钟前
PyTorch推理输入长度分桶与Padding优化实战:减少无效计算
人工智能·pytorch·python·深度学习·gpu算力
人邮异步社区14 分钟前
C语言好学,还是Python好学?
c语言·开发语言·python
程序员-Benothing19 分钟前
Linux系统监控工具全家桶:sar、dstat、glances、Prometheus
linux·运维·prometheus
MoRanzhi120323 分钟前
122.四平方和(暴力枚举)
python·数学·算法·蓝桥杯·完全平方数·暴力枚举·四平方和定理
鱼宵40 分钟前
工厂模式实战:消灭魔法数字,把写死的 new 收进一个厂里
开发语言·python
deepseek2342 分钟前
GitHub 停发 push 邮件后,自动通知怎么接?用 Python 做验签、去重与可靠入队
python·github·webhook
昔我往昔1 小时前
chromadb 这个query_texts 查询的是基于分词还是基于向量查询的
python·chromadb