Linux源码编译安装Python全版本指南(3.8-3.14·附离线源码包)
Linux 源码编译安装 Python 全版本指南(3.8-3.14·附源码包)
2026年6月更新 | 官方源码包 | 适用于 Ubuntu/Debian/CentOS
2026年6月更新 | 官方源码包 | 适用于 Ubuntu/Debian/CentOS
为什么源码编译
Linux 发行版自带的 Python 通常不是最新版,而且包管理器里的版本切换麻烦。源码编译让你:
·装任意版本,不受系统仓库限制
·多版本并存,互不干扰(make altinstall)
·自己掌控编译选项(优化、路径、模块)
本文覆盖 Python 3.8 到 3.14 共七个版本,附完整的编译安装流程。
下载
--- 表格 ---
版本 | 说明 | 下载
Python 3.14.6 | 最新稳定版,bugfix 支持到 2030-10 | 点击下载
Python 3.13.14 | 稳定维护版,支持到 2029-10 | 点击下载
Python 3.12.10 | 安全维护版,支持到 2028-10 | 点击下载
Python 3.11.9 | 安全维护版,支持到 2027-10 | 点击下载
Python 3.10.11 | 安全维护版,支持到 2026-10 | 点击下载
Python 3.9.25 | 最终版(EOL),最后一个 3.9 | 点击下载
Python 3.8.20 | 最终版(EOL),最后一个 3.8 | 点击下载
每个资源包含 Windows exe 和 Linux 源码两个文件,下载后按需使用。源码包文件扩展名是 .zip(上传格式限制),下载后改回 .tar.xz 即可正常解压。
每个资源包含 Windows exe 和 Linux 源码两个文件,下载后按需使用。源码包文件扩展名是 .zip(上传格式限制),下载后改回 .tar.xz 即可正常解压。
编译安装步骤
以 Python 3.14.6 为例在 Ubuntu 22.04 上操作。其他版本、其他发行版操作完全一样,换版本号就行。
第一步:装编译依赖
sudo apt update
sudo apt install -y build-essential libssl-dev zlib1g-dev \
libbz2-devlibreadline-dev libsqlite3-dev curl \
libncursesw5-devxz-utils tk-dev libxml2-dev \
libxmlsec1-devlibffi-dev liblzma-dev
CentOS/RHEL 用户用 yum groupinstall "Development Tools" 然后 yum install 对应的 -devel 包。
这些依赖干什么的:
--- 表格 ---
依赖 | 作用
build-essential | gcc、make 等编译工具
libssl-dev | pip 下载包需要的 HTTPS 支持
libsqlite3-dev | sqlite3 模块(很多框架用)
liblzma-dev | lzma 压缩支持
libffi-dev | ctypes 模块
libbz2-dev / zlib1g-dev | 压缩格式支持
libreadline-dev | 终端里按上下箭头翻历史命令
缺一个后面就少一个模块,pip install 某个包的时候报错,回头查半天。
第二步:下载并解压
# 下载后得到的文件名类似 python-3.14.6-amd64.exe 和 Python-3.14.6-src.zip
# Linux 源码包扩展名是 .zip,改回 .tar.xz
mv Python-3.14.6-src.zip Python-3.14.6.tar.xz
# 解压
tar -xf Python-3.14.6.tar.xz
cd Python-3.14.6
第三步:配置编译选项
./configure --enable-optimizations --prefix=/usr/local/python3.14
两个参数的含义:
·--enable-optimizations:开启编译优化(PGO,Profile Guided Optimization)。编译时间多 2-3 分钟,但运行速度快 10-30%。 生产环境必开。
·--prefix=/usr/local/python3.14:安装到这个目录。多版本并存的核心——每个版本装自己目录,互不打架。
第四步:编译
make -j$(nproc)
-j$(nproc) 用上所有 CPU 核心。4 核机器大概 3-5 分钟,2 核大概 6-10 分钟。
第五步:安装
sudo make altinstall
注意:用 altinstall,不是 install。
区别:make install 会覆盖系统的 python3 命令。make altinstall 只装 python3.14,不影响系统自带 Python。多版本并存的关键一步。
第六步:验证
/usr/local/python3.14/bin/python3.14 --version
# Python 3.14.6
/usr/local/python3.14/bin/python3.14 -c "import ssl; print('SSL OK')"
# SSL OK
第二个命令确认 pip 联网没问题——如果 SSL 模块没装上,后面 pip install 全挂。
多版本管理
装完多个版本后,用软链接和 update-alternatives 管理:
# 给每个版本建软链接
sudo ln -sf /usr/local/python3.14/bin/python3.14 /usr/local/bin/python3.14
sudo ln -sf /usr/local/python3.14/bin/pip3.14 /usr/local/bin/pip3.14
sudo ln -sf /usr/local/python3.12/bin/python3.12 /usr/local/bin/python3.12
sudo ln -sf /usr/local/python3.12/bin/pip3.12 /usr/local/bin/pip3.12
# 用 update-alternatives 设置默认 Python
sudo update-alternatives --install /usr/local/bin/python python /usr/local/bin/python3.14 1
sudo update-alternatives --install /usr/local/bin/python python /usr/local/bin/python3.12 2
# 切换版本
sudo update-alternatives --config python
之后 python 命令指向你选的默认版本,python3.14 / python3.12 始终指向各自版本。
常见编译报错
1. configure: error: no acceptable C compiler found in $PATH
没装 gcc:
sudo apt install build-essential
2. ModuleNotFoundError: No module named '_ssl'
OpenSSL 开发库没装:
sudo apt install libssl-dev
装完后重新跑 ./configure && make && sudo make altinstall。只重装 Python 不会自动补上缺失模块——configure 的时候没检测到就不会编译。
3. ModuleNotFoundError: No module named '_lzma'
sudo apt install liblzma-dev
# 然后重新 configure → make → altinstall
4. pip 装包报 SSL 证书错误
系统 CA 证书没更新:
sudo apt install ca-certificates
sudo update-ca-certificates
各版本选哪个
--- 表格 ---
场景 | 推荐版本
新项目 | 3.14.6(bugfix 到 2030-10)
生产环境·求稳 | 3.12.10(安全维护到 2028-10)
老项目兼容 | 看项目 setup.py 里的python_requires
深度学习 | 3.10.11 或 3.11.9(PyTorch/TF 兼容最好)
已停止维护 | 3.9.25 / 3.8.20(仅限特殊需求)
卸载
编译安装的 Python 卸载很简单——删掉安装目录就行:
sudo rm -rf /usr/local/python3.14
sudo rm -f /usr/local/bin/python3.14 /usr/local/bin/pip3.14
所有源码包来自 python.org 官方,通过 CSDN 下载频道分发。每个资源包内含 Windows exe + Linux 源码两个文件。