首先 安装编译工具和依赖项
sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev
下载python3.6源代码
cd ~
wget https://www.python.org/ftp/python/3.6.15/Python-3.6.15.tgz
tar -xf Python-3.6.15.tgz
编译和安装
cd Python-3.6.15
./configure --enable-optimizations
make -j$(nproc)
sudo make altinstall
上述命令将会安装Python 3.6,而不会影响系统默认的Python版本。请注意,这可能需要一些时间,因为它是从源代码编译Python。
验证是否安装成功
python3.6 -V
其他的一些解释:
make -j$(nproc)
make -j$(nproc)
命令告诉make
使用系统上所有可用的CPU核心来并行编译源代码。这对于大型项目可以显著提高编译速度,因为它同时使用多个CPU核心进行编译,而不是顺序执行。如果你不使用 -j
选项,make
将以串行方式编译,一次只处理一个任务,可能会导致编译速度较慢。
sudo make altinstall
-
altinstall
: 这是make
命令的一个目标。make altinstall
与make install
的区别在于,altinstall
不会覆盖系统默认的Python版本。它将新版本的Python安装到一个带有版本号的二进制文件名中(例如python3.6
),而不是覆盖python
二进制文件。这样可以避免潜在的系统兼容性问题。
因此,sudo make altinstall
命令的目的是以超级用户的权限,使用make
工具编译并安装Python源代码,并将其安装到系统中,但不会影响系统默认的Python版本。