在Ubuntu 22.04上源码安装python3.7及setuptools及pip

背景

随着时代发展,ubuntu的版本也在飞速迭代,现在ubuntu中默认带的python3已经到python3.11了,并且python2也已经在新的版本中被废弃了。

但是还有一些场景下会用到python3.7,这里给一些说明,方便大家使用。

操作

找到要安装的python版本

https://www.python.org/ftp/python/

目前3.7的最后一个版本是3.7.9,选择你需要的架构。如果已经有的比如amd、macos、win32的可以直接下载安装包

大部分场景可能是Linux,尤其是嵌入式的Linux,所以需要下载源码包。

比如Python-3.7.9.tar.xz或者Python-3.7.9.tgz.

复制代码
# wget https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tgz
# tar zxvf Python-3.7.9.tgz
# cd Python-3.7.9
# sudo apt install libssl-dev libffi-devel
# ./configure --with-ssl
# make
# sudo make install

正常安装完成后会都有setuptools以及对应的pip

QA

1.报这个问题

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

解决:检查./configure的时候有没有--with-ssl

2.报no type

解决:sudo apt install libssl-dev libffi-devel

相关推荐
xiaoye-duck13 分钟前
《Linux 网络编程》深入理解五种 IO 模型:从 IO 本质到非阻塞 IO 实战
linux·网络
程序员-Benothing13 分钟前
Linux内核与模块管理:uname、lsmod、modprobe、sysct
linux·运维·数据库
嵌入式小能手14 分钟前
飞凌嵌入式ElfBoard-Shell编程应用实例-使用WiFi拨号上网
linux·服务器·网络
..Dauntless..15 分钟前
【Linux】环境变量
linux·运维·服务器
FED_AF27 分钟前
Linux运维“邪修”功法之正则表达式
linux·运维·正则表达式
xiaoye-duck44 分钟前
《Linux 网络编程·加餐》详解 listen 的 backlog 与 TCP 全连接队列
linux·tcp
Vcaker1 小时前
Linux学习33-HPA动态扩缩容及k8s调度策略
linux·运维·学习
yi0111 小时前
LeetCode 134 加油站:从 双循环暴力 演变到 贪心
linux·算法·leetcode
醇氧1 小时前
CentOS7.9 Yum 安装 Redis6.x(RPM 包,无需编译,推荐 remi 源)
linux·python
傲世仙尊1 小时前
重写的顿悟-lambda类型擦除条件变量的真相与sendto里的bind
linux·网络