unbutu源码安装python3.12

1 安装依赖项

sudo apt update
sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libsqlite3-dev libreadline-dev libffi-dev wget

2 下载Python 3.12源代码

# 下载
wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tar.xz

# 解压源代码:
tar -xvf Python-3.12.0.tar.xz

# 进入目录:
cd Python-3.12.0

# 配置安装选项:
sudo ./configure --enable-optimizations --prefix=/usr/local/python312

# 编译和安装:

sudo make -j $(nproc) # $(nproc) 会被替换为实际的 CPU 核心数量,并行编译  项目,使用所有可用的 CPU 核心
sudo make altinstall # 在原有安装基础上进行额外安装

# 使用 make altinstall 而不是 make install 是为了避免覆盖系统默认的Python版本。

# 在Python的./configure脚本中,常用的–enable参数及其含义如下:

–enable-ipv6:启用IPv6支持。
–enable-unicode=ucs4:启用UCS-4编码的Unicode支持。
–enable-shared:启用共享库的构建。
–enable-optimizations:启用优化,对Python进行一些优化以提高性能。
–enable-openssl:启用OpenSSL支持。
–enable-threads:启用多线程支持。
–enable-ssl-default-suites:启用默认的SSL密码套件。
这些参数可以根据你的需求进行配置,以便根据特定的功能或性能要求来构建Python。

在Python的./configure脚本中,常用的–with参数及其含义如下:

–with-threads:指定线程库的类型,例如–with-threads=pthread。
–with-dbmliborder:指定数据库访问库的优先顺序,例如–with-dbmliborder=gdbm:ndbm。
–with-computed-gotos:启用computed goto优化。
–with-ensurepip:指定ensurepip模块的安装方式,例如–with-ensurepip=upgrade。
–with-system-expat:使用系统安装的expat库。
–with-openssl:指定OpenSSL库的路径,例如–with-openssl=/usr/local/ssl

3 验证安装

python3.12 --version

posted @ 2024-07-05 21:24  刘清政  阅读(158)  评论(0编辑  收藏  举报