惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
WordPress大学
WordPress大学
T
Tor Project blog
Jina AI
Jina AI
美团技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
V
V2EX
雷峰网
雷峰网
博客园 - 聂微东
B
Blog RSS Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 【当耐特】
Microsoft Azure Blog
Microsoft Azure Blog
S
SegmentFault 最新的问题
Recent Announcements
Recent Announcements
有赞技术团队
有赞技术团队
GbyAI
GbyAI
aimingoo的专栏
aimingoo的专栏
U
Unit 42
博客园 - Franky
Last Week in AI
Last Week in AI
阮一峰的网络日志
阮一峰的网络日志
Microsoft Security Blog
Microsoft Security Blog
F
Fortinet All Blogs
罗磊的独立博客
云风的 BLOG
云风的 BLOG
G
Google Developers Blog
大猫的无限游戏
大猫的无限游戏
Engineering at Meta
Engineering at Meta
C
Check Point Blog
Martin Fowler
Martin Fowler
The Cloudflare Blog
N
Netflix TechBlog - Medium
小众软件
小众软件
T
Tailwind CSS Blog
T
The Blog of Author Tim Ferriss
月光博客
月光博客
博客园 - 司徒正美
Stack Overflow Blog
Stack Overflow Blog
J
Java Code Geeks
Blog — PlanetScale
Blog — PlanetScale
P
Proofpoint News Feed
H
Help Net Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
The Exploit Database - CXSecurity.com
S
Securelist
I
Intezer
Spread Privacy
Spread Privacy

mephisto.cc

修复rime-ice无法弹出候选框的问题 开机滚动字体显示优化 个人网站安全防护 树莓派上部署Vaultwarden 使用goaccess实时分析Caddy日志 个人网站监控 Hugo全站AVIF记 Linux下尝试使用Godot开发小游戏 Arch linux dae 透明代理 Airflow接管galler-dl下载任务 如何使用gallery-dl批量下载图像 Arch核显下如何愉快玩Dota2和CS2 Arch/labwc 环境网络相关设置 Rime添加dota2词库 Arch 重装记录 Supertuxkart iOS版终于发布了 打造自己的流媒体音乐服务 剪切板管理工具clipcat推荐 MangoHud性能监控 微信小程序开发记 Rofi试用 解决Arch下VSCode无法输入中文的问题 独立窗口管理器下无法录屏问题处理 上海市二手房成交数据监控 OpenLDAP监控 Arch linux如何顺畅连接蓝牙设备 使用Git和Ansible管理配置文件 Arch Linux SSL VPN 客户端配置 简单获取celery任务实时结果 Arch linux下iNode客户端的安装和使用方法 券商费率调整记 迷你主机组装记 Labwc更换定制皮肤 树莓派跑分流代理 实用自动代理配置示例 九年老鼠标复活记 Openvpn示例 Mac下如何旋转webp图片 如何隐藏Vscode中Markdown PDF插件的头部内容 解决Linux下网络配置无法变更保存的问题 labwc环境启用wlogout Ubuntu下新官方微信尝鲜 简单检测用户是否开启广告屏蔽 Atuin ZFS下卡顿问题解决 Wine安装64位微信 Fish 和 Atuin使用记 Fastapi简单实现临时下载链接 Fastapi微信公众号开发简要 Hugo根据语种展示不同内容 如何修复Waybar微信图标错误 信封加密简要 Linux环境下维护公众号记录 快速隐藏和呼出终端 Wayland环境自动切换壁纸 SuperTuxKart 试玩 简单抓取雪球股票快讯 为什么你的kill命令不能列出信号表 Wine安装微信保姆教程 Hysteria科学上网简要 Ubuntu 23.10 钉钉无法启动解决方法 网站导航栏防止插入Adsense自动广告 Linux环境按键检测 Hugo文末添加最后修改时间 Wayland环境ksnip无法复制问题解决 我眼中的股票市场 Caddy简单图片防盗链 greetd和regreet使用教程 Wayland环境下截图加后期修改 Wayland 环境下gif录屏 Firefox的一些有趣功能 Ubuntu 切换系统语言 Firefox 标题栏高度调整 网站添加回到顶部功能 Hugo自定义字体 Labwc 便捷配置 Wofi使用教程 窗口管理器labwc使用记 文件共享软件Dufs推荐 Hugo静态站点接入Adsense广告 Fcitx5配置详解 Ubuntu安装chrome的方法总结 一种Xterm.js的全屏方案 Google网址收录api Python示例 手机听离线音乐 Snipe it资产导入 应用启动器yofi使用配置 Snipe it资产管理系统安装使用 Ubuntu开机启动加速 Vue3 vite TypeScript跨域等相关设置 Ubuntu手动升级Libreoffice Ubuntu设置alacritty为默认终端 简体文章批量转换为繁体 使用Inkscape调整svg图片大小 实用命令 使用mitmproxy给手机app抓包 Python中rstrip方法细解 Github同主机多仓库部署deploy key问题处理 KeePassXC使用教程 Ubuntu 22.10连接蓝牙耳机报错br-connection-profile-unavailable解决方法 Caddy日志配置轮转和格式化
Linux安装最新版本Python
2022-10-26 · via mephisto.cc

昨天新版的 Python 3.11 发布了,官方说 3.11 比 3.10 快 10-60%,标准测试集快 1.25x,还有其它的方面的更新,那问题来了,Linux 下如何更新到最新版本。

1. 官网下载最新版本 Python 源码

前往 Python官网 https://www.python.org/downloads/

download latest python

2. 解压

解压上一步下载的最新版本 Python

1tar -xvf Python-3.11.0.tar.xz

进入解压后的目录

3. 安装依赖

我用的 Ubuntu,Debian 系对应的依赖为:

1sudo apt-get install build-essential gdb lcov pkg-config \
2    libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-dev \
3    libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev \
4    lzma lzma-dev tk-dev uuid-dev zlib1g-dev

细心的读者可能会有疑问,你怎么知道依赖这些安装包的,其实 Python 解压后的源码目录中 README.rst 文件里有提到相关依赖说明,安装软件先读其说明文档是个好习惯。如下图所示,链接里面有说明依赖包。

Python readme

4. 编译

这一步没什么好解释的,如果需要调整配置的话,可先运行 ./configure --help 查询帮助信息。

值得一提的是,make 可接 j 参数,比如 4 核心 cpu 的系统,make -j4 可加快编译速度

5. 安装(重要步骤)

这一步很关键,因为 Python 是 Linux 系统的重要软件包,大部分情况下都不推荐直接 make install 安装,这样会覆盖系统的基础版本 Python,导致不必要的意外情况,强烈建议:

make altinstall 会安装到${prefix}/bin/python3,而 ${prefix}/bin/python3 是链接到 ${prefix}/bin/python3.X 的,这样多版本可以和谐共存,互不侵犯。

6. 确认

仔细看上一步骤回显的话,最新版本 Python 默认被安装到/usr/local/bin/python3.11

1which python3.11
2/usr/local/bin/python3.11

7. 自己做个软链接

为了少敲几个字符,可以做个软链接,/usr/bin/python 存在的话,可先备份再删除。 如今大部分系统默认升级到 python3,所以选择链接到 python 而不是 python3

1sudo ln -s /usr/local/bin/python3.11 /usr/bin/python

8. 安装 iPython

iPython 比 Python 自带的解释器好用

1python -m pip install ipython

9. 最终结果

检查 Python 和 iPython,一切正常

1➜  ~ python
2Python 3.11.0 (main, Oct 25 2022, 11:03:14) [GCC 12.2.0] on linux
3Type "help", "copyright", "credits" or "license" for more information.
4>>>
5➜  ~ ipython
6Python 3.11.0 (main, Oct 25 2022, 11:03:14) [GCC 12.2.0]
7Type 'copyright', 'credits' or 'license' for more information
8IPython 8.5.0 -- An enhanced Interactive Python. Type '?' for help.

最后,Python 官方文档也有一些相关说明,感兴趣的可以看看:https://docs.python.org/3.11/using/unix.html#getting-and-installing-the-latest-version-of-python