如何在一个 Linux 系统上编译多个 Python 的版本?
在Linux系统上编译多个Python版本可按以下步骤进行:
安装依赖
- 对于Ubuntu系统,执行 sudo apt-get install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget 命令安装编译所需的依赖库。
- 对于CentOS系统,执行 sudo yum install gcc zlib - devel bzip2 - devel openssl - devel ncurses - devel sqlite - devel readline - devel tk - devel gdbm - devel db4 - devel libpcap - devel xz - devel 命令安装相关依赖。
下载Python源码
- 访问Python官方网站,选择要编译的多个Python版本的源码并下载。
编译安装
- 以Python 3.7.12和Python 3.11.4为例,先解压Python 3.7.12的源码包,进入解压后的目录,执行 ./configure --prefix=/usr/local/python37 命令进行配置,指定安装路径。接着执行 make && make install 命令进行编译和安装。
- 同样地,解压Python 3.11.4的源码包,进入目录后执行 ./configure --prefix=/usr/local/python311 命令配置,然后执行 make && make install 完成编译安装。
环境配置
- 为了方便使用不同版本的Python,可在 ~/.bashrc 或 ~/.zshrc 文件中添加以下内容:
bash
export PATH=/usr/local/python37/bin:$PATH
alias python37=/usr/local/python37/bin/python3.7
export PATH=/usr/local/python311/bin:$PATH
alias python311=/usr/local/python311/bin/python3.11
- 保存文件后,执行 source ~/.bashrc 或 source ~/.zshrc 使配置生效。
这样就可以在Linux系统上成功编译并使用多个Python版本了,通过 python37 和 python311 等命令来分别调用不同的版本。