print("⁧⁧ ("~喵 2024-07-10 20:46 采纳率: 0%
浏览 7
已结题

CentOS7.2中似乎是ssl模块无法使用

img


安装了python3.10.6
这两个依赖也安装了
openssl openssl-devel
也是用清华源了
就是不知道为什么还是这样子
国内华为云

  • 写回答

4条回答 默认 最新

  • 阿里嘎多学长 2024-07-10 20:46
    关注

    以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


    您好,针对您在CentOS 7.2系统中使用Python 3.10.6安装requests库时遇到的ssl模块不可用的问题,我为您提供以下解决方案:

    1. 升级Python版本:根据搜索结果 [^1^],Python 3.10及以上版本不再支持libressl使用ssl,需要使用更高版本的openssl来解决编译安装时ssl模块导入失败的问题。建议您使用openssl 1.1.1版本或更高版本。

    2. 编译安装openssl:您可以按照以下步骤编译安装openssl:

      • 下载openssl源码包,例如从openssl官网
      • 解压并进入源码目录,然后执行以下命令:
        ./config -fPIC --prefix=/usr/include/openssl enable-shared
        make
        make install
        
      • 确保/usr/include/openssl/目录为空或者存在正确版本的openssl头文件。
    3. 解决缺少模块问题:如果在编译过程中出现缺少模块的错误,例如缺少IPC/Cmd.pm模块,您可以通过以下步骤解决:

      • 安装perl-CPAN:
        yum install -y perl-CPAN
        
      • 进入CPAN shell模式并安装缺少的模块:
        perl -MCPAN -e shell
        cpan[1]> install IPC/Cmd.pm
        
    4. 编译安装Python:在编译Python时,需要确保正确指定openssl的路径。您可以按照以下步骤操作:

      • 下载Python源码包,例如从Python官网
      • 修改Python源码目录下的Modules/Setup文件,确保正确链接openssl库。
      • 使用以下命令编译安装Python,并指定openssl的路径:
        ./configure --prefix=/usr/local/python-3.11.2 --with-zlib=/usr/include/ --with-openssl-rpath=auto --with-openssl=/usr/include/openssl OPENSSL_LDFLAGS=-L/usr/include/openssl OPENSSL_LIBS=-lssl -lcrypto OPENSSL_INCLUDES=-I/usr/include/openssl
        make -j 4
        make install
        
    5. 验证ssl模块是否安装成功:安装完成后,您可以通过以下命令验证ssl模块是否成功安装:

      /usr/local/python-3.11.2/bin/python3 -V
      /usr/local/python-3.11.2/bin/python3
      

      执行import _ssl不报错则表示ssl模块安装成功。

    6. 扩展系统库访问:编译安装Python后,您可能需要更新系统的库文件访问路径,以便系统能够找到新安装的Python库。您可以在/etc/ld.so.conf.d/目录下创建一个新的配置文件,例如python3.conf,并添加新Python安装目录的库路径,然后运行ldconfig命令使配置生效。

    希望以上步骤能够帮助您解决问题。如果还有其他疑问或需要进一步的帮助,请随时告诉我。

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月10日
  • 创建了问题 7月10日

悬赏问题

  • ¥15 微信小程序跳转关联公众号
  • ¥15 Java AES 算法 加密采用24位向量报错如何处理?
  • ¥15 使用X11可以找到托盘句柄,监控到窗口点击事件但是如何在监听的同时获取托盘中应用的上下文菜单句柄
  • ¥45 字符串操作——数组越界问题
  • ¥15 Loss下降到0.08时不在下降调整学习率也没用
  • ¥15 QT+FFmpeg使用GPU加速解码
  • ¥15 为什么投影机用酷喵播放电影放一段时间就播放不下去了?提示发生未知故障,有什么解决办法吗?
  • ¥15 来个会搭建付费网站的有偿
  • ¥100 有能够实现人机模式的c/c++代码,有图片背景等,能够直接进行游戏
  • ¥15 以AT89C51单片机芯片为核心来制作一个简易计算器,外部由4*4矩阵键盘和一个LCD1602字符型液晶显示屏构成,内部由一块AT89C51单片机构成,通过软件编程可实现简单加减乘除。