如何编译安装Oracle Linux 9.x Python3?

Python

1 基础知识

1.1 Python的介绍

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。

1.2 Python特点

1.2.1 总体特点

– 广泛流行
– 开源免费
– 面向对象
– 可移植性
– 功能强大
– 易于使用

1.2.2 语言特点

– 优雅
– 明确
– 简单

2 最佳实践

2.1 准备工作

2.1.1 安装编译环境

dnf -y install gcc gcc-c++ make expat-devel

2.1.2 下载源代码

cd ~
wget https://www.python.org/ftp/python/3.12.6/Python-3.12.6.tgz

2.1.3 解压软件包

cd ~
tar -xf Python-3.12.6.tgz

2.2 安装Python

2.2.1 执行预编译

cd ~/Python-3.12.6
./configure --prefix=/usr/local/python-3.12.6 --enable-optimizations

注:Python从设计上就运行多版本并存,所以无需卸载旧版本

2.2.2 执行编译

cd ~/Python-3.12.6
make

如果遇到以下提示,

Could not build the ssl module!
Python requires a OpenSSL 1.1.1 or newer

请安装如下依赖包,

dnf install -y openssl-devel

如果有如下错误提示,

The following modules are *disabled* in configure script:
_sqlite3        

请安装如下依赖包,

dnf install -y sqlite-devel

如果有如下错误提示,

The necessary bits to build these optional modules were not found:
_bz2                  _ctypes               _ctypes_test       
_curses               _curses_panel         _dbm               
_gdbm                 _lzma                 _tkinter           
_uuid                 nis                   readline           
zlib 

请安装如下依赖包,

dnf install -y bzip2-devel libffi-devel ncurses-devel gdbm-devel xz-devel tk-devel libuuid-devel nss-devel readline-d
evel zlib-devel

注:解决依赖关系后,你可能需要重新执行预编译和编译,否则新的依赖包可能无法被检测到。

2.2.3 编译并安装

make install

2.2.4 配置环境变量

vim /etc/profile.d/python-3.12.6.sh

加入如下配置,

export PYTHONHOME="/usr/local/python-3.12.6"
export PATH="${PYTHONHOME}/bin:$PATH"
if [ -z "$PYTHONPATH" ]; then
        export PYTHONPATH="${PYTHONHOME}/lib/python3.12/site-packages"
else
        export PYTHONPATH="${PYTHONHOME}/lib/python3.12/site-packages:$PYTHONPATH"
fi

修改完配置文件,你需要通过如下命令导入环境变量,

source /etc/profile.d/python-3.12.6.sh

2.2.5 测试安装

python3 -V

可见如下提示,

Python 3.12.6

2.3 升级pip

如何升级Oracle Linux 9.x pip?

参阅文档
=====================

Pythond的安装
——————–
https://docs.python.org/3/using/unix.html#on-linux

Python文档版本的下载
——————–
https://www.python.org/downloads/source/
https://www.python.org/downloads/

没有评论

发表回复

Python
如何升级Oracle Linux 9.x pip?

1 前言 一个问题,一篇文章,一出故事。 笔者今天完成Python3的编译安装,本章将继续就编译后的 …

Python
如何Ubuntu编译安装Python3?

1 基础知识 1.1 Python的介绍 Python是一种解释型、面向对象、动态数据类型的高级程序 …

Python
如何基于Oracle Linux 8.x编译安装Python3?

1 基础知识 1.1 Python的介绍 Python是一种解释型、面向对象、动态数据类型的高级程序 …