![使用 pyenv 安装 Python 时出现“未编译 Python ssl 扩展。缺少 OpenSSL lib?”错误](https://linux22.com/image/1156299/%E4%BD%BF%E7%94%A8%20pyenv%20%E5%AE%89%E8%A3%85%20Python%20%E6%97%B6%E5%87%BA%E7%8E%B0%E2%80%9C%E6%9C%AA%E7%BC%96%E8%AF%91%20Python%20ssl%20%E6%89%A9%E5%B1%95%E3%80%82%E7%BC%BA%E5%B0%91%20OpenSSL%20lib%EF%BC%9F%E2%80%9D%E9%94%99%E8%AF%AF.png)
使用 pyenv 安装 Python 时出现以下错误:
ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?
我正在使用 Ubuntu 18.04 Bionic Beaver,如何解决这个问题?
答案1
如果您尝试安装的 Python 版本等于或低于 2.7.12,则它不支持 OpenSSL1.1.0,因此您需要替换libssl-dev
为libssl1.0-dev
。
Ubuntu 18.04 是第一个切换到 OpenSSL1.1.0 的官方版本,这就是为什么您过去可能不会受到此影响。
答案2
检查您的版本:openssl version
pyenv install 3.9 #ok
pyenv install 3.10 #error
目前 Python 版本 3.6 到 3.9 与 OpenSSL 1.0.2、1.1.0 和 1.1.1 兼容。在大多数情况下,Python 还可以与 LibreSSL >= 2.7.1 配合使用,
但缺少一些功能和测试失败。