Итак, я работал с errbot и запустил virtualenv с python3.5. Когда я запускаю команду errbot, я получаю эту ошибку
from OpenSSL import crypto
File "/Users/me/workspace/chatbotv2/chatbot_venv3/lib/python3.5/site-packages/OpenSSL/__init__.py", line 8, in <module>
from OpenSSL import rand, crypto, SSL
File "/Users/me/workspace/chatbotv2/chatbot_venv3/lib/python3.5/site-packages/OpenSSL/rand.py", line 12, in <module>
from OpenSSL._util import (
File "/Users/me/workspace/chatbotv2/chatbot_venv3/lib/python3.5/site-packages/OpenSSL/_util.py", line 6, in <module>
from cryptography.hazmat.bindings.openssl.binding import Binding
File "/Users/me/workspace/chatbotv2/chatbot_venv3/lib/python3.5/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 250, in <module>
_verify_openssl_version(Binding.lib.SSLeay())
File "/Users/me/workspace/chatbotv2/chatbot_venv3/lib/python3.5/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 230, in _verify_openssl_version
"You are linking against OpenSSL 0.9.8, which is no longer "
Это тема «запрошено до смерти» на SO, поэтому, очевидно, я был в состоянии получить решение как можно скорее. Я последовал этому ответу. Однако, когда я запускаю brew link --force openssl
, я получаю следующее:
Warning: Refusing to link: openssl
Linking keg-only openssl means you may end up linking against the insecure,
deprecated system OpenSSL while using the headers from Homebrew's openssl.
Instead, pass the full include/library paths to your compiler e.g.:
-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib
Для чего я пробовал:
export CPPFLAGS='-I/usr/local/opt/openssl/include'
export LDFLAGS='-L/usr/local/opt/openssl/lib'
После этого я теряюсь и не знаю, что делать. Когда я пытаюсь: python -c "import ssl; print (ssl.OPENSSL_VERSION)"
, я все еще получаю OpenSSL 0.9.8zg 14 July 2015
. Я использую OSX
brew install openssl
затемbrew link openssl --force
2) вы проверяли наличие нескольких экземпляров openssl на своем пути? - person Liam Kelly   schedule 25.08.2016openssl-1.0.2h_1
. КОГДА я делаю$ echo $PYTHONPATH
в своем virtualenv, он возвращает пустую строку - person Beginner   schedule 25.08.2016which openssl
, затем посмотрите, есть ли openssl в/usr/bin
и/usr/local/bin
. Я предполагаю / надеюсь, что вы найдете один в обоих. - person Liam Kelly   schedule 25.08.2016which openssl
возвращает/usr/local/bin/openssl
- person Beginner   schedule 25.08.2016File exists
- person Beginner   schedule 25.08.2016