试图解决我遇到的OpenSSL版本问题。
我的Mac上似乎有三个不同版本的OpenSSL。
Python2.7.11版本为0.9.7m:
python -c "import ssl; print ssl.OPENSSL_VERSION"
OpenSSL 0.9.7m 23 Feb 2007
在终点站:
openssl version
OpenSSL 1.0.1h 5 Jun 2014
最近编译/安装:
/usr/local/ssl/bin/openssl
OpenSSL> version
OpenSSL 1.0.2h 3 May 2016
OpenSSL>
我最近把我的OS X升级到了10.11.5。在此过程中,导致以前工作的python脚本出现问题。下面是错误消息片段:
Python错误消息:
You are linking against OpenSSL 0.9.8, which is no longer *
RuntimeError: You are linking against OpenSSL 0.9.8, which is no longer support by the OpenSSL project. You need to upgrade to a newer version of OpenSSL.
(*-是的,这就是错误消息的样子。在句子中间删掉了。)
如能就解决这一问题提出任何建议,将不胜感激。我想让Python引用OpenSSL版本1.0.2h,而不是过时的版本0.9.7m
我曾多次尝试使用各种post/blog来安装Python和OpenSSL,但都没有成功。
将此作为解决方法:
这似乎是最近对hazmat密码库的检查。您可以在以下位置查看源代码:
https://github.com/pyca/cryptography/blob/master/src/cryptography/hazmat/bindings/openssl/binding.py#L221
如果您愿意承担风险,那么
CRYPTOGRAPHY_ALLOW_OPENSSL_098
环境变量会将错误降级为弃用警告。在过去的一天里,我也在OSX上遇到过这个问题,所以最近发生了一些变化。您可以安装使用较新版本openssl的python版本。
首先,您可以brew安装新版本的open SSL
你应该看到一个新版本
然后,您可以安装另一个版本的python,它使用较新版本的openssl。如果使用pyenv,则为:
您可以在以下位置找到有关使用安装了brew的openssl版本安装python的更多信息:https://github.com/yyuu/pyenv/wiki/Common-build-problems
这个问题几乎要了我的命!!!! 最后,我的人解决了这个问题,只有降低包的版本“paramiko”从2.*到1.*(像1.15.4我设置)才能解决!
相关问题 更多 >
编程相关推荐