Python- und OpenSSL-Versionsreferenz auf OS X

Ich versuche, eine OpenSSL-Version zu lösen, die ich habe.

Es scheint, dass ich drei verschiedene Versionen von OpenSSL auf meinem Mac habe.

  1. Python 2.7.11 hat Version 0.9.7m:

    python -c "import ssl; print ssl.OPENSSL_VERSION" OpenSSL 0.9.7m 23 Feb 2007 
  2. Am Terminal:

     openssl version OpenSSL 1.0.1h 5 Jun 2014 
  3. Kürzlich kompiliert / installiert:

     /usr/local/ssl/bin/openssl OpenSSL> version OpenSSL 1.0.2h 3 May 2016 OpenSSL> 

Ich habe vor kurzem mein OS X auf 10.11.5 aktualisiert. In dem Prozess, verursacht ein Problem für zuvor arbeiten Python-Skripte. Unten ist das Fehlermeldungs-Snippet:

Python-Fehlermeldung:

  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. 

(* – ja, das ist, wie die Fehlermeldung aussieht. Es ist in der Mitte des Satzes getrimmt.)

Alle Empfehlungen zur Behebung dieses Problems würden sehr geschätzt. Was ich möchte, ist, dass Python die OpenSSL Version 1.0.2h gegen die veraltete Version 0.9.7m verweisen soll.

Ich habe versucht, Python und OpenSSL viele Male mit verschiedenen Post / Blogs für die Anleitung ohne Glück zu installieren.

4 Solutions collect form web for “Python- und OpenSSL-Versionsreferenz auf OS X”

Sie können eine Version von python installieren, die eine neuere Version von openssl verwendet.

Zuerst können Sie eine neue Version der offenen SSL installieren

 brew update brew install openssl brew link --force openssl 

Du solltest eine neuere Version mit sehen

 openssl version -a 

Dann können Sie eine andere Version von Python installieren, die diese neuere Version von openssl verwendet. Wenn du pyenv benutzt , wäre das:

 CFLAGS="-I$(brew --prefix openssl)/include" \ LDFLAGS="-L$(brew --prefix openssl)/lib" \ pyenv install -v 3.4.3 

Weitere Informationen zum Installieren einer Version von Python mit einer installierten Version von openssl finden Sie hier: https://github.com/yyuu/pyenv/wiki/Common-build-problems

Verwenden Sie dies als Workaround:

 export CRYPTOGRAPHY_ALLOW_OPENSSL_098=1 

Dies scheint eine aktuelle Überprüfung der Hazmat-Kryptographie-Bibliothek zu sein. Sie sehen den Quellcode unter:

https://github.com/pyca/cryptography/blob/master/src/cryptography/hazmat/bindings/openssl/binding.py#L221

Die Umgebungsvariable CRYPTOGRAPHY_ALLOW_OPENSSL_098 den Fehler auf eine CRYPTOGRAPHY_ALLOW_OPENSSL_098 , wenn Sie bereit sind, das Risiko CRYPTOGRAPHY_ALLOW_OPENSSL_098 . Ich habe auch in OS X in der vergangenen Tag, so etwas geändert vor kurzem.

Dieses Problem beendet mich fast !!!! Schließlich löste mein Kerl dies nur durch Absenken der Version des Pakets "paramiko" von 2. * bis 1. * (Wie 1.15.4 ich set) kann lösen!

Wenn du You are linking against OpenSSL 1.0.0 export CRYPTOGRAPHY_ALLOW_OPENSSL_098=1 You are linking against OpenSSL 1.0.0 du You are linking against OpenSSL 1.0.0 und benutze den export CRYPTOGRAPHY_ALLOW_OPENSSL_098=1 Umgebungsvariable, um ihn zu umgehen. Danke @braddock

  • Ändern Sie die Standard-Python-Version von 2.4 auf 2.6
  • Python-Versionen auf Mac
  • Kann keine Flasche-Mail installieren
  • Speichern Sie die Version des Feldes in einem Django-Modell
  • Ich bekomme den gleichen Versionsnamen für WSS und MOSS 2007?
  • Welche Version von Python habe ich installiert?
  • Python-qgis Versionsinformationen
  • Wie füge ich Python 3.3 zu Powershell hinzu?
  • RuntimeWarning: Compiletime Version 2.6 des Moduls 'lxml.etree' entspricht nicht der Laufzeitversion 2.7
  • Ist es noch Python 2.6 gegen Python 3?
  • Buildout - mit verschiedenen python version
  • Python ist die beste Programmiersprache der Welt.