在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

相关推荐
半杯咖啡半行码32 分钟前
Linux 驱动开发入门:内核模块编程基础
linux·服务器·网络
别动我齐刘海1 小时前
Linux 系统调试学习2
linux·运维·c++·人工智能·学习·机器学习·机器人
龙虾电话1 小时前
语音机器人打断不进去:VAD 双阈值迟滞里一个共用的 bool,和它引发的连锁误判
linux
honsor1 小时前
机房IP化改造首选:以太网温湿度传感器,PoE供电+Modbus TCP一网搞定
linux·运维·服务器
默|笙2 小时前
【Linux网络】_udp_socket(认识)
linux·网络·udp
程序员梅雨2 小时前
ZooKeeper面经总结
java·大数据·linux·分布式·后端·zookeeper·中间件
lingran__2 小时前
Linux进程万字详解(二)|进程状态深度剖析:调度队列、内核链表、D状态设计哲学、僵尸孤儿进程与Slab机制
linux·进程管理·内核链表·pcb·僵尸进程·孤儿进程·进程状态
GeW3 小时前
以Linux为基、数据库为核:新质生产力路线图下的企业架构升级
linux
忆挽篱笙歌3 小时前
进程的状态
linux·ubuntu
kyle~4 小时前
Linux --- Socket 用户进程与内核网络协议栈之间的统一接口
linux·arm开发·网络协议