编译安装Python 3.13
对于版本较旧的Linux系统,例如Debian 10,使用apt只能安装Python 3.7,此时可考虑编译安装。
目前Python最新稳定版是3.13,本文就以该版本为例。
Python源码下载页面:
https://www.python.org/ftp/python/
安装依赖:
sudo apt install build-essential libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev pkg-config
下载源码:
wget https://www.python.org/ftp/python/3.13.0/Python-3.13.0.tar.xz
解压:
tar -xvJf Python-3.13.0.tar.xz
如果提示以下错误:
tar (child): xz: Cannot exec: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now
安装xz工具:
sudo apt-get install xz-utils
进入源码目录:
cd Python-3.13.0
查看支持的选项:
./configure --help
配置:
./configure --enable-optimizations
开始编译安装:
sudo make -j$(nproc) & sudo make altinstall
参数说明:
- -j:指定使用线程数,$(nproc)会返回支持的线程数;
- altinstall:不影响系统现有Python版本的情况下安装。
查看CPU支持线程数:
nproc
还可以使用:
lscpu
在输出信息中,查找Thread(s) per core项,这个值就是CPU支持的最大线程数。
验证是否安装成功:
python3.13 --verson
pip3.13 --verson
设置默认版本
如果需要将python命令指向编译安装的Python版本,创建以下链接:
sudo ln -s /usr/local/bin/python3.13 /usr/local/bin/python
同理,如果需要将python3命令指向编译安装的Python版本,创建以下链接:
sudo ln -s /usr/local/bin/python3.13 /usr/local/bin/python3
pip命令也可以参考以上方法设置。如果是多版本切换,则不推荐创建链接,而是使用update-alternatives来管理。
执行以下命令:
sudo update-alternatives --install /usr/bin/python python /usr/local/bin/python3.13 1
参数说明:
--install <link> <name> <path> <priority>
- link:链接;
- name:名称。可自定义,切换版本时需要用到;
- path:程序路径;
- priority:优先级。
切换Python版本:
sudo update-alternatives --config python
pip命令推荐使用:
python3.13 -m pip install [模块名称]
同样也可添加多版本pip:
sudo update-alternatives --install /usr/bin/pip pip /usr/local/bin/pip3.13 1
切换pip版本:
sudo update-alternatives --config pip
执行以下命令验证:
python --version
pip --version
update-alternatives删除:
sudo update-alternatives --remove <name> <path>

