CentOS编译安装Python3.11完整教程

python3.11安装

1、安装依赖

复制代码
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel libffi-devel gcc gcc-c++ make

2、上传解压

下载地址:Index of /ftp/python/3.11.7/

复制代码
tar -xvf Python-3.11.7.tgz -C /usr/local/soft

3、编译

复制代码
# 1、创建安装目录
mkdir -p /usr/local/soft/python3.11
cd /usr/local/soft/Python-3.11.7
# 安装
./configure --prefix=/usr/local/soft/python3.11
make
make install

# 创建链接(快捷方式)
ln -s /usr/local/soft/python3.11/bin/python3.11 /usr/bin/python3
ln -s /usr/local/soft/python3.11/bin/pip3.11 /usr/bin/pip3

# 配置环境变量
vim /etc/profile

profile末尾添加

复制代码
export PATH=$PATH:/usr/local/soft/python3.11/bin

生效环境变量

复制代码
source /etc/profile

# 删除不需要的文件
rm -rf /usr/local/soft/Python-3.11.7
rm -f /usr/local/packages/Python-3.11.7.tgz

验证python

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

4、修改源

方式一:

复制代码
pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple

方式二:

复制代码
# 在root目录下创建.pip目录
mkdir ~/.pip
# 在.pip目录下创建pip.conf
vim ~/.pip/pip.conf

写入

复制代码
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
trusted-host = mirrors.aliyun.com

5、更新pip

复制代码
python3 -m pip install --upgrade pip

6、安装python工具

复制代码
pip install pandas

7、创建虚拟环境

复制代码
# 创建虚拟环境
mkdir code
cd code/
python3 -m venv myvenv
# 激活虚拟环境
source myvenv/bin/activate
# 退出虚拟环境
deactivate

8、解决办法

复制代码
yum install -y gcc-c++ make cmake
sudo yum install centos-release-scl
sudo yum install devtoolset-9-gcc devtoolset-9-gcc-c++
# 临时启用gcc9(仅限当前终端)
scl enable devtoolset-9 bash
# 永久启用:在 ~/.bashrc 中添加 source /opt/rh/devtoolset-9/enable

安装第三方库报错解决

复制代码
yum install -y gcc-c++
#下载兼容版本
pip3 install pandas==1.5.3

卸载python3

复制代码
# 删除软连接
rm -f /usr/bin/python3
rm -f /usr/bin/pip3
# 进入soft目录删除
rm -rf /usr/local/soft/python3.11/
# 手动删除/etc/profile中添加的环境变量
相关推荐
云计算练习生9 分钟前
什么是 Bash?Linux 默认 Shell 的核心功能
linux·操作系统·bash·shell·命令解释器
1314lay_100716 分钟前
MESSAGE ‘採購單不存在‘(005) TYPE ‘S‘ DISPLAY LIKE ‘E‘.
经验分享·笔记
说实话起个名字真难啊28 分钟前
Git常用小问题笔记
笔记·git·elasticsearch
FlightYe1 小时前
音视频修炼之容器与协议(二):HLS和DASH流媒体
android·linux·ffmpeg·音视频·android runtime·dash
承渊政道1 小时前
Linux网络学习【从深入理解网络层原理到IP分片与重组全过程剖析】
linux·计算机网络·ubuntu·ip分片与重组
橘色的喵1 小时前
嵌入式Linux编程,如何把硬件中断交给用户态--UIO 的机制
linux·mcu·isr·中断·uio
m4Rk_1 小时前
【论文阅读】Agent记忆机制(112):MemFit——保留对话原文,用多路检索降低长期记忆成本
论文阅读·人工智能·学习·开源·github
~城南花已开~1 小时前
Redfish 事件接收服务搭建指南(Ubuntu Server 实测)
linux·服务器·python·ubuntu
kyrie_sakura1 小时前
大模型学习17 大模型学习 - LangChain1_概述
学习
倔强的石头1062 小时前
【Linux指南】进程通信系列(四):命名管道 FIFO —— 让陌生进程按名字见面
linux·服务器·网络