我们在使用 Linux 系统的时候有些镜像会自带 Python ,但是我们在运行不同项目的时候可能会需要用到不同版本的 Python ,这个时候我们就可以通过编译安装的方式来安装不同版本的 Python。接下来我们以 Ubuntu 24.04 上编译安装 Python 3.11 为例,具体不同的 Python 版本可以在 https://www.python.org/downloads/ 查看下载。

安装依赖包

我们可以通过以下指令安装 Python 的依赖包:

apt install build-essential gdb lcov pkg-config \
      libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-dev \
      libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev \
      lzma lzma-dev tk-dev uuid-dev zlib1g-dev libmpdec-dev

具体可以在 https://devguide.python.org/getting-started/setup-building/#install-dependencies 查看所有需要的依赖包。

下载并且生成 makefile

接下来我们可以通过 wget 来下载 Python 源码:

apt install wget
wget https://www.python.org/ftp/python/3.11.10/Python-3.11.10.tgz;

接下来我们解压代码,并且通过 configure 生成 makefile

tar -zxvf Python-3.11.10.tgz
cd Python-3.11.10
./configure --prefix=[你的 Python 安装路径] --enable-optimizations

编译安装 Python

运行之后我们等程序跑完,之后我们可以运行:

make && make install

来进行安装,安装完成后我们可以在 [你的 Python 安装路径]/bin/ 下找到 python3 以及 pip3,我们可以通过建立软链接来建立 pythonpip 执行档:

cd [你的 Python 安装路径]/bin
ln -s pip3 pip
ln -s python3 python

使用安装的 Python

我们可以通过两种方法来运行这个版本的 Python ,第一个方法是直接在命令行中执行比如:

[你的 Python 安装路径]/bin/python --version

第二个方法是通过 virtualenv 建立虚拟环境:

virtualenv pyenv --python=[你的 Python 安装路径]/bin/python