python3.8 安装缺少ssl、_ctypes模块解决办法

news2025/2/4 6:43:54

问题

安装pyhton3.8安装默认不依赖ssl

运行Flask项目时报错:

Traceback (most recent call last):
  File "/usr/local/python3/bin/flask", line 8, in <module>
    sys.exit(main())
  File "/usr/local/python3/lib/python3.8/site-packages/flask/cli.py", line 967, in main
    cli.main(args=sys.argv[1:], prog_name="python -m flask" if as_module else None)
  File "/usr/local/python3/lib/python3.8/site-packages/flask/cli.py", line 586, in main
    return super(FlaskGroup, self).main(*args, **kwargs)
  File "/usr/local/python3/lib/python3.8/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/usr/local/python3/lib/python3.8/site-packages/click/core.py", line 1686, in invoke
    sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)
  File "/usr/local/python3/lib/python3.8/site-packages/click/core.py", line 943, in make_context
    self.parse_args(ctx, args)
  File "/usr/local/python3/lib/python3.8/site-packages/click/core.py", line 1408, in parse_args
    value, args = param.handle_parse_result(ctx, opts, args)
  File "/usr/local/python3/lib/python3.8/site-packages/click/core.py", line 2400, in handle_parse_result
    value = self.process_value(ctx, value)
  File "/usr/local/python3/lib/python3.8/site-packages/click/core.py", line 2362, in process_value
    value = self.callback(ctx, self, value)
  File "/usr/local/python3/lib/python3.8/site-packages/flask/cli.py", line 742, in _validate_key
    is_context = isinstance(cert, ssl.SSLContext)
AttributeError: 'NoneType' object has no attribute 'SSLContext'

查看文件../site-packages/flask/cli.py,导入ssl包失败会捕获异常并将ssl赋值为None

自己import ssl也报错找不到ssl模块,确认是缺少ssl模块

解决

在编译安装python时候安装ssl模块
文件中 Modules/Setup去掉注释这五行

重新编译安装python

./configure --with-ssl --prefix=/usr/local/python3
make && make install

如果编译python过程中报错:

gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall    -std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter -Wno-missing-field-initializers -Werror=implicit-function-declaration  -I./Include/internal  -I. -I./Include    -DPy_BUILD_CORE_BUILTIN  -DUSE_SSL -I/usr/local/ssl/include -I/usr/local/ssl/include/openssl -c ./Modules/_ssl.c -o Modules/_ssl.o
./Modules/_ssl.c:57:10: fatal error: openssl/rsa.h: No such file or directory
 #include "openssl/rsa.h"
          ^~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:1932: Modules/_ssl.o] Error 1

则需要安装openssl:

下载地址

参见https://www.openssl.org/,包括以下版本:
https://www.openssl.org/source/openssl-3.1.0-alpha1.tar.gz
https://www.openssl.org/source/openssl-1.1.1s.tar.gz
https://www.openssl.org/source/openssl-3.0.7.tar.gz

编译安装

注:编译之前请先确保系统中安装了make以及gcc的软件包。,编译安装前确认/usr/include/openssl/为空

tar -zxf openssl-1.1.1s.tar.gz
cd openssl-1.1.1s/
./config -fPIC --prefix=/usr/include/openssl enable-shared
make
make install

其中:

  • l -fPIC: 位置无关代码
  • l --prefix=: 路径 一般选 /usr/include/openssl
  • l enbale-shared: 动态库

要在Debian、Ubuntu或者其他衍生版上安装OpenSSL:

sudo apt-get install libssl-dev

要在[Fedora][CentOS]或者RHEL上安装OpenSSL开发包:

sudo yum install openssl-devel

安装完后,尝试重新编译程序。

验证ssl模块安装成功:

使用pip安装bson的时候报错:”ModuleNotFoundError:No module named _ctypes“ 的解决方案

1、执行如下命令:

yum install libffi-devel 
2、从"./configure ..."重新安装

问题二:pip3 install时报错“pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.”

先安装openssl-dev,然后重新编译安装,只是在编译的过程中加入 --enable-optimizations

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1427330.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HTML -- 常用标签

HTML HTML&#xff08;Hyper Text Markup Language&#xff09;&#xff0c;超文本标记语言&#xff0c;是一门标记语言&#xff0c;不是编程语言&#xff0c;所以它没有变量&#xff0c;也没有任何语句结构。 所谓超文本&#xff0c;即超越了文本范畴的文档格式&#xff0c;…

Ubuntu环境下安装部署Nginx(有网)

本文档适用于在Ubuntu20.04系统下部署nginx 一、使用apt-get命令安装nginx 注&#xff1a;以下命令都是在root用户下使用 1. 检查是否存在apt命令 apt –version 说明&#xff1a;出现版本号就说明当前环境存在apt 2. 更新apt命令 apt update 3. 安装nginx apt-get in…

阿里云-DataWorks- ODPS SQL开发

1、前言 阿里云 数据仓库这一系列断断续续也有很久没有更新了,新年新气象,赶紧追上开写。 2、基本概念 1、ODPS: Open Data Processing Service, 简称ODPS;是由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,应用于数据分析、挖掘、商业智能等…

K8S-应用部署

1 应用管理解读 2 应用部署实践 资源对象管理关系 资源对象管理实践 手工方式&#xff1a; kubectl run pod名称 --imageimage地址资源清单方式: apiVersion: v1 kind: Pod metadata:labels:run: my-podname: my-pod spec:containers:- image: kubernetes-register.sswang.co…

PFA坩埚实验室配套电热板加热消解样品PFA反应杯本底值低

PFA坩埚由于其特殊性能&#xff0c;具有广泛的应用领域。以下是PFA坩埚常见的用途&#xff1a; 1. 高温反应容器&#xff1a;PFA坩埚能够耐受高温环境&#xff0c;因此常被用于高温下的化学反应。它可以用于进行样品的加热、蒸馏、蜡烛氧化、固相萃取等高温实验。 2. 强腐蚀性…

抢鲜看 | 6个贴“新”好用的实力派功能,用起来溜到犯规!

岁月不居&#xff0c;时节如流&#xff1b;新故相推&#xff0c;日生不滞。 不觉间年末将至&#xff0c;ProcessOn的研发小哥们赶在春节假期前的最后一波正经推送&#xff0c;马不停蹄的给大家安排上线了几个新功能。今天分享的6个新功能中&#xff0c;一定有你提的需求&#x…

计算机网络实验五

目录 实验五 路由器基本配置 1、实验目的 2、实验设备 3、网络拓扑及IP地址分配 4、实验过程 &#xff08;1&#xff09;路由器设备名称的配置 &#xff08;2&#xff09;路由器每日提示信息配置 &#xff08;3&#xff09;路由器端口的IP地址配置 &#xff08;4&…

【Java 数据结构】排序

排序算法 1. 排序的概念及引用1.1 排序的概念1.2 常见的排序算法 2. 常见排序算法的实现2.1 插入排序2.1.1 直接插入排序2.1.2 希尔排序( 缩小增量排序 ) 2.2 选择排序2.2.1 直接选择排序2.2.2 堆排序 2.3 交换排序2.3.1冒泡排序2.3.2 快速排序2.3.3 快速排序非递归 2.4 归并排…

ChatLaw:基于LLaMA微调的法律大模型

文章目录 动机数据组成模型框架模型评估 北大团队发布首个的中文法律大模型落地产品ChatLaw&#xff0c;为大众提供普惠法律服务。模型支持文件、语音输出&#xff0c;同时支持法律文书写作、法律建议、法律援助推荐。 github地址&#xff1a;https://github.com/PKU-YuanGroup…

解决VSCode使用Remote SSH连接远程服务器免密登陆

&#x1f4d5;作者简介&#xff1a; 过去日记&#xff0c;致力于Java、GoLang,Rust等多种编程语言&#xff0c;热爱技术&#xff0c;喜欢游戏的博主。 &#x1f4d7;本文收录于杂项系列&#xff0c;大家有兴趣的可以看一看 &#x1f4d8;相关专栏Rust初阶教程、go语言基础系列…

【Redis】Redis集群方案应该怎么做 都有哪些方案

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;Redis ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 &#xff08;1&#xff09;twemproxy &#xff08;2&#xff09;codis &#xff08;3&#xff09;redis cluster3.0自带的集群 …

【每日一题】7.LeetCode——合并两个有序链表

&#x1f4da;博客主页&#xff1a;爱敲代码的小杨. ✨专栏&#xff1a;《Java SE语法》|《数据结构与算法》 ❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更新的动力❤️ &#x1f64f;小杨水平有限&#xff0c;欢…

C语言系列-联合

&#x1f308;个人主页: 会编程的果子君 ​&#x1f4ab;个人格言:“成为自己未来的主人~” 目录 联合体 联合体类型的声明 联合体的特点 相同成员的结构体和联合体对比 联合体大小的计算 联合的一个练习 联合体 联合体类型的声明 像结构体一样&#xff0c;联合体也是由…

高并发术语—吞吐量

现在面试一圈&#xff0c;都要讲讲高可用&#xff0c;高并发&#xff0c;高性能&#xff0c;如果不说上两句&#xff0c;对不起自己程序员的身份。 但是小公司哪里有那么大的并发量供你学习和调试呢&#xff0c;还是要从市面上的内容来学习这些概念 响应时间response time 请…

PFA氟气吸收装装置耐强酸PFA气体洗涤装置本底纯净

PFA氢气吸收装置在PFA尾气处理中扮演着重要的角色。PFA&#xff08;可溶性聚四氟乙烯&#xff09;是一种聚合物材料&#xff0c;具有良好的化学惰性和耐腐蚀性。在半导体工业过程中&#xff0c;PFA尾气中可能含有氢气等有害气体&#xff0c;需要进行处理以确保环境安全和合规性…

Linux进程信号处理:深入理解与应用(1)

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;its 6pm but I miss u already.—bbbluelee 0:01━━━━━━️&#x1f49f;──────── 3:18 &#x1f504; ◀️…

【架构】Docker实现集群主从缩容【案例4/4】

实现集群主从缩容【4/4】 接上一节&#xff0c;在当前机器为4主4从的架构上&#xff0c;减缩容量为3主3从架构。即实现删除6387和6388. 示意图如下&#xff1a; 第一步&#xff1a;查看集群情况&#xff08;第一次&#xff09; redis-cli --cluster check 127.0.0.1:6387roo…

前端性能优化:Vue项目打包后app.xxx.js 和 chunk-vendors.xxx.js 文件太大,导致页面加载时间太长

问题场景&#xff0c;如下图&#xff0c;环境上的 app.js 和chunk-vendors.js 两个文件大小&#xff0c;高达3.4M 和 2M &#xff0c;加载所耗费的时间也很长。 下面说一下如何解决&#xff1a; 1、首先需要安装插件 compression-webpack-plugin&#xff0c;我这里用的是6.1.1…

Java多线程--避免同步机制带来的死锁问题及用Lock锁解决线程安全问题

文章目录 一、死锁&#xff08;1&#xff09;说明&#xff08;2&#xff09;案例1、案例12、案例23、案例3 &#xff08;3&#xff09;诱发死锁的原因及解决方案1、诱发死锁的原因2、避免死锁 二、JDK5.0新特性&#xff1a;Lock(锁)&#xff08;1&#xff09;介绍&#xff08;2…

C++集群聊天服务器 网络模块+业务模块+CMake构建项目 笔记 (上)

跟着施磊老师做C项目&#xff0c;施磊老师_腾讯课堂 (qq.com) 一、网络模块ChatServer chatserver.hpp #ifndef CHATSERVER_H #define CHATSERVER_H#include <muduo/net/TcpServer.h> #include <muduo/net/EventLoop.h> using namespace muduo; using namespace …