Centos 7.9 安装python 3.10


undefinedundefined

 

Python 编译安装

1.先检查当前openssl 的版本

执行 openssl version   大于1.1.0版本即可;否则执行如下

复制代码

# 1.安装对应的依赖库
sudo yum install -y zlib yum install zlib-devel openssl-devel sqlite-devel bzip2-devel libffi libffi-devel gcc gcc-c++
 
# 2. 下载openssl安装文件
mkdir /tmp/softwarebak
cd /tmp/softwarebak
wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz   --no-check-certificate
 
# 3. 解压安装openssl,并进入openssl的目录
tar -zxvf openssl-1.1.1k.tar.gz
cd openssl-1.1.1k
export LANG=zh_CN.UTF-8
export LANGUAGE=zh_CN.UTF-8

./config --prefix=/usr/local/openssl shared zlib 
sudo make && make install

# 4. 备份当前openssl
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak 

# 5. 配置使用新版本
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl

# 6. 更新动态链接库数据并重新加载
echo /usr/local/openssl/lib >> /etc/ld.so.conf
ldconfig -v

# 7. 查看是否升级成功
openssl version

# 8. 如果缺少libssl.s0.1.1
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
复制代码

 

2.安装依赖包

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

 

3.下载python3源码包,并解压编译

 

注意事项:如果升级了openssl ,需要解压源码包后修改vim /tmp/Python-3.10.8/Modules/Setup 文件,在文件末尾追加如下内容:

SSL=/usr/local/openssl
_ssl _ssl.c \
        -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
        -L$(SSL)/lib -lssl -lcrypto

 

复制代码
#下载源码包
wget https://www.python.org/ftp/python/3.10.8/Python-3.10.8.tgz #此处可更换为自己想要的包名即可
# 进入源码目录 cd Python
-3.10.8 #指定编译语言 export LANG=zh_CN.UTF-8 export LANGUAGE=zh_CN.UTF-8 #指定安装目录 sudo ./configure --prefix=/usr/local/python3 --with-ssl=/usr/local/openssl #编译安装 sudo make && sudo make install && sudo make clean
复制代码

 

4.设置环境变量,并检查是否成功 

复制代码
#编辑/etc/profile,在尾部添加如下代码:
echo 'export PATH=$PATH:/usr/local/python3/bin' >> /etc/profile

#使用source命令重新加载/etc/profile
source /etc/profile

软链接,设置全局变量
sudo ln -s /usr/local/python3/bin/python3.10  /usr/bin/python3
sudo ln -s /usr/local/python3/bin/pip3.10  /usr/bin/pip3
 
#查看安装的python版本 
python3 --version
pip3 list

#设置pip源
cat > /etc/pip.conf << EOF
[global]
trusted-host = mirrors.aliyun.com
index-url = http://mirrors.aliyun.com/pypi/simple/

[list]
format=columns
EOF
复制代码

5.如果yum无法正常使用,可能是3跟2冲突导致,修改如下文件即可
sudo vim /usr/bin/yum
sudo vim /usr/libexec/urlgrabber-ext-down
把文件里面的#!/usr/bin/python 也修改为#! /usr/bin/python2



参考链接:
https://www.jianshu.com/p/fd3aa300bbcf
 
posted @   会bk的鱼  阅读(1410)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示