Ubuntu 24.04 编译安装最新Python及多版本切换
描述:说到机器学习,人工智能,深度学习不免会提到Python
这一门编程语言(人生苦短,及时Python
),Python是一门解释型、面向对象、动态数据类型的高级程序设计语言,使用Python可以非常便利的处理各种数据。
写这篇教程我想达到的目的主要是“授人以渔”,而不仅仅是“授人以鱼”。希望各位小伙伴可以通过我写的这篇文章,能够明白多Python版本安装思路,逐步自己“独立起来”,下次安装软件的时候就可以自己克服困难,成功安装软件。
这里话接上一篇《AIGC | 为机器学习工作站安装NVIDIA 4070 Ti Super显卡驱动》文章,作为作者进行机器学习的基础篇(筑基期
),在 Ubuntu 24.04 TLS Desktop
(默认自带3.12.3
与发布版本跨度不大,也可以不用升级) 上进行最新版本的Python进行编译安装,并使用 update-alternatives
进行多版本环境切换。
温馨提示:作者后续发布更多机器学习入门及实践操作文章,所以一定要关注我哟。
实践之路
Step 1.首先检查系统软件是否均为最新,并更新到最新版本,并安装后续编译安装所需的依赖,注意:此处作者已排除Kernel进行自动升级。
代码语言:javascript复制# 刷新软件包目录
sudo apt update
# 列出当前可用的更新
sudo apt list --upgradable
# 如上一步提示有可以更新的项目,则执行更新
sudo apt upgrade
# 安装依赖
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libbz2-dev liblzma-dev sqlite3 libsqlite3-dev tk-dev uuid-dev libgdbm-compat-dev
Step 2. 访问Python官网(www.python.org)下载Python源码包,目前最新稳定版本为 3.12.4
(24年6月发布)。
# 下载
sudo wget https://www.python.org/ftp/python/3.12.4/Python-3.12.4.tar.xz
# xz 解压
sudo xz -d Python-3.12.4.tar.xz
# tar 解压到指定目录
tar -xf Python-3.12.4.tar -C /usr/local/src/Python-3.12.4
weiyigeek.top-Download Python Source Releases图
温馨提示:考虑到Python源码包较大,如果网络环境不佳,可能下载较慢,建议华为的镜像站下载,链接直达 mirrors.huaweicloud.com/python ,找到需要下载的版本目录下载即可.
Step 3. 进入Python源码目录,进行编译安装。
代码语言:javascript复制# 进入源码目录
cd /usr/local/src/Python-3.12.4
# 检查依赖与配置编译
sudo ./configure --enable-optimizations --with-lto --enable-shared
# 编译参数:
# –enable-optimizations:用 PROFILE_TASK 启用以配置文件主导的优化(PGO)
# –with-lto:在编译过程中启用链接时间优化(LTO)
# –enable-shared:启用共享 Python 库 libpython 的编译
# 更多可用配置项的信息,请参阅 Python 官方文档。
# 注意:这里作者没使用prefix参数指定默认安装路径,我是为了方便后续多版本环境切换做演示,读者可根据自身需要配置。
# 编译,-j 后面的数字为参与编译的CPU核心数,根据个人机器配置调整
sudo make -j 8
# 安装生成二进制文件
sudo make altinstall
Step 4. 安装完成后,查看Python而二进制版本信息,创建软连接。
代码语言:javascript复制/usr/local/src/Python-3.12.4# ./python --version
/usr/local/bin/python3.12.4/python
# Python 3.12.4 (main, Jun 28 2024, 10:15:42) [GCC 13.2.0] on linux
# Type "help", "copyright", "credits" or "license" for more information.
# >>> exit()
# 软连接
ln -s /usr/local/src/Python-3.12.4/python /usr/local/bin/python3.12.4
ls -l /usr/local/bin/python3.12.4
# lrwxrwxrwx 1 root root 35 6月 30 10:39 /usr/local/bin/python3.12.4 -> /usr/local/src/Python-3.12.4/python
Step 5. 安装完成后,如果你的 Ubuntu 上安装了多个 Python 版本,可使用 update-alternatives
进行多版本环境切换。
# 每条命令末尾的数字(即 1、2、3 等)表示该版本的优先级。数值越大,优先级越高。在上图的示例中,Python 3.12 的优先级最高(2),而 Python 3.12.4 的优先级最低(1)。
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.12 2
sudo update-alternatives --install /usr/bin/python python /usr/local/bin/python3.12.4 1
update-alternatives: 使用 /usr/local/bin/python3.12.4 来在自动模式中提供 /usr/bin/python (python)
# 查看Python多版本
sudo update-alternatives --list python
# /usr/bin/python3.12
# /usr/local/bin/python3.12.4
# 切换 Python 为最新安装的 3.12.4 版本
sudo update-alternatives --config python
# 有 2 个候选项可用于替换 python (提供 /usr/bin/python)。
# 选择 路径 优先级 状态
# ------------------------------------------------------------
# 0 /usr/bin/python3.12 2 自动模式
# 1 /usr/bin/python3.12 2 手动模式
# * 2 /usr/local/bin/python3.12.4 1 手动模式
# 要维持当前值[*]请按<回车键>,或者键入选择的编号:1
# update-alternatives: 使用 /usr/bin/python3.12 来在手动模式中提供 /usr/bin/python (python)
# 查看当前python版本,可以看到已经切换到 3.12.4
root@codeServer:~# python --version
Python 3.12.4
# 移除添加的Python版本
sudo update-alternatives --remove python /usr/local/bin/python3.12.4
Step 6.安装 pip 包管理工具,并升级 pip 版本,本附上常用镜像源。
代码语言:javascript复制# 安装 pip
apt install python3-pip
# 升级现有的 pip 版本, 需要使用 python 的命令来升级
python3 -m pip install --upgrade pip
# 查看版本
pip3 --version
# pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)
考虑到国内网络环境,pip 源建议使用国内镜像源,如清华源,华为源等,这里附上常用镜像源。
代码语言:javascript复制清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/simple/
华中科技大学:http://pypi.hustunique.com/
豆瓣源:http://pypi.douban.com/simple/
腾讯源:http://mirrors.cloud.tencent.com/pypi/simple
华为镜像源:https://repo.huaweicloud.com/repository/pypi/simple/
这里以安装jupyter
为例(jupyter.org/install), 使用以下命令安装经典的 Jupyter Notebook:
pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple/
jupyter notebook
如果你是其他Python开发项目,可以先则先上 cd 到项目中存在 requirements 的文件路径,使用下述命令即可安装项目依赖
代码语言:javascript复制pip3 install -r requirements.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
# --trusted-host mirrors.aliyun.com 为信任国外站点
本文详细介绍了如何在 Ubuntu 24.04 上安装 Python 3.12 或指定版本、如何安装和升级 Pip,以及如何切换默认 Python 版本,这些技巧有助于满足 Python 用户和开发者的多样化项目需求。
如果此篇文章对你有帮助,请你将它转发给更多的人!