码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 解决pip install时ssl报错的问题


    这里以python3为例,python2的解决方案应该也与此类似。

    问题

    centos服务器,pip install时,安装失败,同时有报错信息:

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

    此时进入到python,尝试import ssl,同样也会出现错误。

    原因

    这是因为在安装python时没有配置ssl选项,或者是配置了ssl后编译时有报错,但是最后仍然编译出了能正常运行的python执行程序。

    解决方法

    重新安装python。

    步骤一 确认本地openssl版本

    因为python配置ssl,要求是openssl1.1.1及以上的版本,首先要确认本地openssl版本是否符合,执行命令

    openssl version
    
    • 1

    如果版本是1.1.1及以上,那就直接进入步骤二。否则需要重新安装openssl。
    openssl 官方下载页面:https://www.openssl.org/source/
    这里下载的是当前最新的openssl-1.1.1q。

    wget https://www.openssl.org/source/openssl-1.1.1q.tar.gz
    tar zxvf openssl-1.1.1q.tar.gz
    mkdir /usr/local/openssl
    cd openssl-1.1.1q
    ./config --prefix=/usr/local/openssl
    make && make install
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    有的教程里也会替换/usr/bin/下的openssl,但是这里只是给python编译使用,可以不替换,只要在便宜python时制定openssl的路径即可。安装完后用命令确认一下是否版本为1.1.1

    /usr/local/openssl/bin/openssl version
    
    • 1
    步骤二 编译安装python

    python官方下载页面 : https://www.python.org/downloads/

    wget https://www.python.org/ftp/python/3.10.7/Python-3.10.7.tgz
    tar zxvf Python-3.10.7.tgz
    cd Python-3.10.7
    mkdir /usr/local/python3
    ./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl
    make && make install
    ln -s /usr/local/python3/bin/python3 /usr/bin/python3
    ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    这里也可以单独执行make,看看编译结果里是否有报错,如果有ssl相关报错,说明还是ssl模块编译还是有问题,可以查看编译结果里的原因说明。
    之后再执行pip3 install就不会报错了。

    参考:
    解决pip is configured with locations that require TLS/SSL, however the ssl module in Python is not

  • 相关阅读:
    Java环境变量学习
    java高考填报志愿综合参考系统springboot+vue
    mysql中一个字段查看有没有重复的值用DISTINCT函数,查看两个字段有没有重复的值用那个函数实例?
    前端 vue生命周期
    FTP服务器配置(虚拟用户)
    Batch normalization和Layer normalization
    用文字描述给黑白照上色,这个免费网站火了!网友:比其他同类都好用
    网页大作业代码自取
    【STL】容器 - set和map的使用
    做软件测试一定要注意的细节
  • 原文地址:https://blog.csdn.net/feiniao8651/article/details/126878364
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号