机器学习筑基篇,Ubuntu 24.04 编译安装 Python 及多版本切换

知识是人生的灯塔,只有不断学习,才能照亮前行的道路


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 进行多版本环境切换。

温馨提示:作者后续发布更多机器学习入门及实践操作文章,所以一定要关注我哟。

原文连接:机器学习筑基篇,Ubuntu 24.04 编译安装 Python 及多版本切换说到机器学习,人工智能,深度学习不免会提到Python这一门编程语言(人生苦短,及时Python),Python是一门解释型、面向对象、动态数据类型的高级程序设计语言,使用Python可以非常便利的处理各种数据。https://mp.weixin.qq.com/s/CEIZfJiTNDAAN-3tmPZ7og

实践之路

Step 1.首先检查系统软件是否均为最新,并更新到最新版本,并安装后续编译安装所需的依赖,注意:此处作者已排除Kernel进行自动升级。

go 复制代码
# 刷新软件包目录
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月发布)。

go 复制代码
# 下载
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源码目录,进行编译安装。

go 复制代码
# 进入源码目录
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而二进制版本信息,创建软连接。

go 复制代码
/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 进行多版本环境切换。

go 复制代码
# 每条命令末尾的数字(即 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 版本,本附上常用镜像源。

go 复制代码
# 安装 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 源建议使用国内镜像源,如清华源,华为源等,这里附上常用镜像源。

go 复制代码
清华大学: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:

go 复制代码
pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple/
jupyter notebook

如果你是其他Python开发项目,可以先则先上 cd 到项目中存在 requirements 的文件路径,使用下述命令即可安装项目依赖

go 复制代码
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 用户和开发者的多样化项目需求。

温馨提示:作者最近10年的工作学习笔记(涉及网络、安全、运维、开发),需要学习实践笔记的看友,可添加作者账号WeiyiGeeker,当前价格¥199,除了获得从业笔记的同时还可进行问题答疑以及每月远程技术支持,希望大家多多支持,收获定大于付出!


如果此篇文章对你有帮助,请你将它转发给更多的人!

学习推荐 往期文章

感觉文章不错的童鞋,请帮忙转发,点 👍、在看,若有疑问的小伙伴,可在评论区留言你想法哟💬!

原文链接:

机器学习筑基篇,Ubuntu 24.04 编译安装 Python 及多版本切换说到机器学习,人工智能,深度学习不免会提到Python这一门编程语言(人生苦短,及时Python),Python是一门解释型、面向对象、动态数据类型的高级程序设计语言,使用Python可以非常便利的处理各种数据。https://mp.weixin.qq.com/s/CEIZfJiTNDAAN-3tmPZ7og

相关推荐
奔跑中的小象5 分钟前
统信UOS + 天数AI卡部署SGLang服务手册
人工智能·uos·sglang·天数智芯
DevSecOps选型指南8 分钟前
中国版Mythos,为何是悬镜安全灵脉CodeAI?
人工智能·安全
Shockang19 分钟前
LangGraph 状态机实战
人工智能
DLYSB_24 分钟前
存储运维实战:基于 Ceph Event 监听与 Python 适配器的分布式存储健康度物理声光响应架构
运维·ceph·python·报警灯
刹那芳华199231 分钟前
循环神经网络的从零开始实现(RNN)
人工智能·rnn·深度学习
阿童木写作40 分钟前
跨境图片翻译工具多合一,批量图片视频字幕翻译加智能抠图
人工智能·python·音视频·语音识别
科技之门41 分钟前
AI3D从建模到贴图、绑骨和动画的完整流程怎么做?V2Fun完整工作流指南
人工智能·3d·贴图
宇宙第一小趴菜42 分钟前
二、机器学习的应用领域和发展史
人工智能·机器学习
前端开发江鸟1 小时前
我写过 MCP Server,却一直以为 MCP 只有 Tool
人工智能
天国梦1 小时前
自习室智能化升级避坑指南:天学网AI智习室方案实测与选型建议
大数据·人工智能