在 Python 中使用 OpenSSL 1.0.2(在 Travis CI OSX 图像上)?

Use OpenSSL 1.0.2 in Python (on Travis CI OSX image)?

我安装了 OpenSSL 1.0.2

$ openssl version
OpenSSL 1.0.2n  7 Dec 2017

已按照建议导出编译器标志

before_install:
- export PATH="/usr/local/opt/openssl/bin:$PATH"
- export LDFLAGS="$LDFLAGS -L/usr/local/opt/openssl/lib"
- export CPPFLAGS="$CPPFLAGS -I/usr/local/opt/openssl/include"

不过,Python 只能看到 OpenSSL 0.9.8

$ python -c 'import ssl; print ssl.OPENSSL_VERSION;'
OpenSSL 0.9.8zh 14 Jan 2016

所以稍后,当我尝试 运行 this Python 脚本时,它说:

ERROR: Your Python's OpenSSL library is outdated (OpenSSL 0.9.8zh 14 Jan 2016).

如何修复 Python 中的 OpenSSL 引用?


我尝试了很多东西:https://github.com/eppz/Unity.Test.eppz/commits/master/.travis.yml

使用 python2 而不是 python 到 运行 脚本。

您可以试试这个简单的 ssl 版本检查:

$ python2 -c 'import ssl; print ssl.OPENSSL_VERSION;'
OpenSSL 1.0.2m  2 Nov 2017