编译安装Python 3.13

AI大语言模型

对于版本较旧的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>
AI大语言模型