在 Debian 系统上编译 Python 源码一般步骤如下(以常见流程为例):
首先更新软件包索引,并安装编译 Python 所需的基本依赖:
sudo apt update
sudo apt install -y \
build-essential \
libssl-dev \
zlib1g-dev \
libncurses5-dev \
libsqlite3-dev \
libreadline-dev \
libbz2-dev \
libffi-dev \
liblzma-dev \
tk-dev
如果是编译 Python 3.11+,通常还需要:
sudo apt install -y libgdbm-dev
去 Python 官方下载页面获取源码:
wget https://www.python.org/ftp/python/3.12.1/Python-3.12.1.tgz
git clone https://github.com/python/cpython.git
cd cpython
tar -xf Python-3.12.1.tgz
cd Python-3.12.1
./configure --enable-optimizations
说明:
--enable-optimizations:开启 PGO/LTO,编译出的 Python 更快(但编译时间更长)./configure --prefix=/usr/local/python3.12 --enable-optimizations
make -j$(nproc)
-j$(nproc)表示使用所有 CPU 核心并行编译
sudo make install
sudo make altinstall
强烈建议用
altinstall,避免覆盖系统自带的/usr/bin/python3
python3.12 --version
或(自定义 prefix):
/usr/local/python3.12/bin/python3.12 --version
ModuleNotFoundError: _lzma未安装 lzma 开发库:
sudo apt install -y liblzma-dev
pip 不存在python3.12 -m ensurepip --upgrade
sudo apt install -y libssl-dev
sudo apt update
sudo apt install -y build-essential libssl-dev zlib1g-dev \
libncurses5-dev libsqlite3-dev libreadline-dev libbz2-dev \
libffi-dev liblzma-dev tk-dev
wget https://www.python.org/ftp/python/3.12.1/Python-3.12.1.tgz
tar -xf Python-3.12.1.tgz
cd Python-3.12.1
./configure --enable-optimizations
make -j$(nproc)
sudo make altinstall
如果你需要:
可以告诉我你的具体需求,我可以给你更精确的方案。