Wenn ich versuche, das Cryptography- Paket für Python entweder pip install cryptography
durch Herunterladen oder Herunterladen des Pakets von der Website zu installieren und auszuführen python setup.py
, wird folgende Fehlermeldung angezeigt:
D:\Anaconda\Scripts\pip-script.py run on 02/27/14 16:13:17
Downloading/unpacking cryptography
Getting page https://pypi.python.org/simple/cryptography/
URLs to search for versions for cryptography:
* https://pypi.python.org/simple/cryptography/
Analyzing links from page https://pypi.python.org/simple/cryptography/
Skipping https://pypi.python.org/packages/cp26/c/cryptography/cryptography-0.2-cp26-none-win32.whl#md5=13e5c4b19520e7dc6f07c6502b3f74e2 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Skipping https://pypi.python.org/packages/cp26/c/cryptography/cryptography-0.2.1-cp26-none-win32.whl#md5=00e733648ee5cdb9e58876238b1328f8 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Skipping https://pypi.python.org/packages/cp27/c/cryptography/cryptography-0.2-cp27-none-win32.whl#md5=013ccafa6a5a3ea92c73f2c1c4879406 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Skipping https://pypi.python.org/packages/cp27/c/cryptography/cryptography-0.2.1-cp27-none-win32.whl#md5=127d6a5dc687250721f892d55720a06c (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Skipping https://pypi.python.org/packages/cp32/c/cryptography/cryptography-0.2-cp32-none-win32.whl#md5=051424a36e91039807b72f112333ded3 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Skipping https://pypi.python.org/packages/cp32/c/cryptography/cryptography-0.2.1-cp32-none-win32.whl#md5=53f6f57db8e952d64283baaa14cbde3d (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Skipping https://pypi.python.org/packages/cp33/c/cryptography/cryptography-0.2-cp33-none-win32.whl#md5=302812c1c1a035cf9ba3292f8dbf3f9e (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Skipping https://pypi.python.org/packages/cp33/c/cryptography/cryptography-0.2.1-cp33-none-win32.whl#md5=81acca90caf8a45f2ca73f3f9859fae4 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
Found link https://pypi.python.org/packages/source/c/cryptography/cryptography-0.1.tar.gz#md5=bdc1c5fe069deca7467b71a0cc538f17 (from https://pypi.python.org/simple/cryptography/), version: 0.1
Found link https://pypi.python.org/packages/source/c/cryptography/cryptography-0.2.1.tar.gz#md5=872fc04268dadc66a0305ae5ab1c123b (from https://pypi.python.org/simple/cryptography/), version: 0.2.1
Found link https://pypi.python.org/packages/source/c/cryptography/cryptography-0.2.tar.gz#md5=8a3d21e837a21e1b7634ee1f22b06bb6 (from https://pypi.python.org/simple/cryptography/), version: 0.2
Using version 0.2.1 (newest of versions: 0.2.1, 0.2, 0.1)
Downloading from URL https://pypi.python.org/packages/source/c/cryptography/cryptography-0.2.1.tar.gz#md5=872fc04268dadc66a0305ae5ab1c123b (from https://pypi.python.org/simple/cryptography/)
Running setup.py (path:c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography\setup.py) egg_info for package cryptography
In file included from c/_cffi_backend.c:7:0:
c/misc_win32.h:225:23: error: two or more data types in declaration specifiers
c/misc_win32.h:225:1: warning: useless type name in empty declaration [enabled by default]
c/_cffi_backend.c: In function 'convert_array_from_object':
c/_cffi_backend.c:1105:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1105:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1130:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1130:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1150:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1150:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'convert_struct_from_object':
c/_cffi_backend.c:1183:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1183:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1196:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1196:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdata_repr':
c/_cffi_backend.c:1583:13: warning: unknown conversion type character 'L' in format [-Wformat]
c/_cffi_backend.c:1583:13: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1595:9: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1595:9: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdataowning_repr':
c/_cffi_backend.c:1647:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1647:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function '_cdata_get_indexed_ptr':
c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1820:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function '_cdata_getslicearg':
c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1872:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdata_ass_slice':
c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1951:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1969:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1983:22: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1983:22: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdata_call':
c/_cffi_backend.c:2367:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:2367:30: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
c/_cffi_backend.c:2367:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cast_to_integer_or_char':
c/_cffi_backend.c:2916:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:2916:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
c/_cffi_backend.c:2916:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:2928:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:2928:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
c/_cffi_backend.c:2928:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'new_array_type':
c/_cffi_backend.c:3480:9: warning: unknown conversion type character 'l' in format [-Wformat]
c/_cffi_backend.c:3480:9: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'b_complete_struct_or_union':
c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:3878:22: warning: too many arguments for format [-Wformat-extra-args]
Traceback (most recent call last):
File "<string>", line 17, in <module>
File "c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography\setup.py", line 113, in <module>
"build": cffi_build,
File "D:\Anaconda\lib\distutils\core.py", line 112, in setup
_setup_distribution = dist = klass(attrs)
File "build\bdist.win-amd64\egg\setuptools\dist.py", line 239, in __init__
File "build\bdist.win-amd64\egg\setuptools\dist.py", line 264, in fetch_build_eggs
File "build\bdist.win-amd64\egg\pkg_resources.py", line 580, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "build\bdist.win-amd64\egg\pkg_resources.py", line 818, in best_match
return self.obtain(req, installer) # try and download/install
File "build\bdist.win-amd64\egg\pkg_resources.py", line 830, in obtain
return installer(requirement)
File "build\bdist.win-amd64\egg\setuptools\dist.py", line 314, in fetch_build_egg
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 593, in easy_install
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 623, in install_item
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 809, in install_eggs
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1015, in build_and_install
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1003, in run_setup
distutils.errors.DistutilsError: Setup script exited with error: command 'gcc' failed with exit status 1
Complete output from command python setup.py egg_info:
In file included from c/_cffi_backend.c:7:0:
c/misc_win32.h:225:23: error: two or more data types in declaration specifiers
c/misc_win32.h:225:1: warning: useless type name in empty declaration [enabled by default]
c/_cffi_backend.c: In function 'convert_array_from_object':
c/_cffi_backend.c:1105:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1105:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1130:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1130:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1150:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1150:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'convert_struct_from_object':
c/_cffi_backend.c:1183:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1183:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1196:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1196:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdata_repr':
c/_cffi_backend.c:1583:13: warning: unknown conversion type character 'L' in format [-Wformat]
c/_cffi_backend.c:1583:13: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1595:9: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1595:9: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdataowning_repr':
c/_cffi_backend.c:1647:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1647:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function '_cdata_get_indexed_ptr':
c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1820:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function '_cdata_getslicearg':
c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1872:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdata_ass_slice':
c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1951:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1969:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:1983:22: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:1983:22: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cdata_call':
c/_cffi_backend.c:2367:30: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:2367:30: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
c/_cffi_backend.c:2367:30: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'cast_to_integer_or_char':
c/_cffi_backend.c:2916:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:2916:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
c/_cffi_backend.c:2916:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c:2928:26: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:2928:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
c/_cffi_backend.c:2928:26: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'new_array_type':
c/_cffi_backend.c:3480:9: warning: unknown conversion type character 'l' in format [-Wformat]
c/_cffi_backend.c:3480:9: warning: too many arguments for format [-Wformat-extra-args]
c/_cffi_backend.c: In function 'b_complete_struct_or_union':
c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]
c/_cffi_backend.c:3878:22: warning: too many arguments for format [-Wformat-extra-args]
Traceback (most recent call last):
File "<string>", line 17, in <module>
File "c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography\setup.py", line 113, in <module>
"build": cffi_build,
File "D:\Anaconda\lib\distutils\core.py", line 112, in setup
_setup_distribution = dist = klass(attrs)
File "build\bdist.win-amd64\egg\setuptools\dist.py", line 239, in __init__
File "build\bdist.win-amd64\egg\setuptools\dist.py", line 264, in fetch_build_eggs
File "build\bdist.win-amd64\egg\pkg_resources.py", line 580, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "build\bdist.win-amd64\egg\pkg_resources.py", line 818, in best_match
return self.obtain(req, installer) # try and download/install
File "build\bdist.win-amd64\egg\pkg_resources.py", line 830, in obtain
return installer(requirement)
File "build\bdist.win-amd64\egg\setuptools\dist.py", line 314, in fetch_build_egg
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 593, in easy_install
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 623, in install_item
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 809, in install_eggs
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1015, in build_and_install
File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1003, in run_setup
distutils.errors.DistutilsError: Setup script exited with error: command 'gcc' failed with exit status 1
----------------------------------------
Cleaning up...
Removing temporary dir c:\users\paco\appdata\local\temp\pip_build_Paco...
Command python setup.py egg_info failed with error code 1 in c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography
Exception information:
Traceback (most recent call last):
File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\basecommand.py", line 122, in main
status = self.run(options, args)
File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\commands\install.py", line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\req.py", line 1229, in prepare_files
req_to_install.run_egg_info()
File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\req.py", line 325, in run_egg_info
command_desc='python setup.py egg_info')
File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\util.py", line 697, in call_subprocess
% (command_desc, proc.returncode, cwd))
InstallationError: Command python setup.py egg_info failed with error code 1 in c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography
Ich habe andere eg_info-Fehlerbeiträge gefunden ( hier und hier ), aber die dort angebotenen Lösungen würden mein Problem nicht lösen. Ich kann auch andere Pakete über PIP installieren.
PIP Version 1.5.4 Setuptools Version 2.2
python
cryptography
pip
Laven
quelle
quelle
pip install
sollte.Antworten:
Ich hatte ein ähnliches Problem und stellte fest, dass mir einfach eine Abhängigkeit fehlte (libssl-dev für mich). Stellen Sie gemäß https://cryptography.io/en/latest/installation/ sicher, dass alle Abhängigkeiten erfüllt sind:
Unter Windows
Wenn Sie unter Windows arbeiten, müssen Sie sicherstellen, dass OpenSSL installiert ist. Es sind vorkompilierte Binärdateien verfügbar. Wenn sich Ihre Installation an einem ungewöhnlichen Ort befindet, legen Sie die Umgebungsvariablen LIB und INCLUDE so fest, dass sie die entsprechenden Orte enthalten. Beispielsweise:
Erstellen von Kryptografie unter Linux
Kryptografie sollte unter Linux sehr einfach zu erstellen sein, vorausgesetzt, Sie haben einen C-Compiler, Header für Python (wenn Sie nicht pypy verwenden) und Header für die OpenSSL- und libffi-Bibliotheken, die auf Ihrem System verfügbar sind.
Für Debian und Ubuntu stellt der folgende Befehl sicher, dass die erforderlichen Abhängigkeiten installiert sind:
Für Fedora- und RHEL-Derivate stellt der folgende Befehl sicher, dass die erforderlichen Abhängigkeiten installiert sind:
Sie sollten nun in der Lage sein, Kryptografie mit den üblichen Funktionen zu erstellen und zu installieren.
quelle
libffi-dev
Paket überhaupt der Schlüssel ist. Ich musste nichts mehr konfigurieren, aber dieser Paketname wurde nicht im Fehlerprotokoll angezeigt: - / Vielen Dank.python-dev
mit ,python3-dev
wenn Sie mit python3Dies ist eine komprimierte Version der Informationen auf der Seite mit den Installationsdokumenten der Kryptografie . Auf dieser Seite finden Sie die neuesten Informationen.
Da diese SO-Frage immer wieder auftaucht, werde ich auch hier eine Antwort hinterlassen (ich bin einer der Pyca / Kryptographie-Entwickler). Folgendes benötigen Sie, um Pyca / Kryptografie zuverlässig auf den drei Hauptplattformen zu installieren.
Bitte beachten Sie, dass in all diesen Fällen die Installation in einer virtuellen Umgebung und nicht im globalen Paketbereich dringend empfohlen wird. Dies ist nicht kryptografiespezifisch, sondern ein allgemeiner Ratschlag, um Ihre Python-Installation zuverlässig zu halten. Der globale Paketspeicherplatz im Betriebssystem, sofern Pythons im Besitz des Systems ist und die Installation von Dingen über Pip darin Probleme bereitet.
Windows
Upgrade auf die neueste Pip (8.1.2 ab Juni 2016) und nur
pip install cryptography
Kryptographie und CFFI werden beide als statisch verknüpfte Räder geliefert.
OS X.
Upgrade auf die neueste Pip (8.1.2 ab Juni 2016) und nur
pip install cryptography
Kryptographie und CFFI werden beide als statisch verknüpfte Räder geliefert. Dies funktioniert für Pyenv Python, System Python, Homebrew Python usw. Solange Sie auf dem neuesten Pip sind, benötigen Sie nicht einmal einen Compiler.
Linux
Ab Version 2.0 werden in der Kryptografie viele linux1-Räder ausgeliefert. Dies bedeutet, dass Benutzer mit pip 8.1+, die auf einer glibc-basierten Distribution (fast alles außer Alpine Linux) und auf x86 / x86-64 (sorry Raspberry Pi-Leute) ausgeführt werden, keinen Compiler oder Header mehr benötigen, da Sie automatisch ein vorkompiliertes Rad erhalten . Als erstes sollten Sie versuchen, Ihren Pip zu aktualisieren!
Wenn Sie nicht mit manylinux1 kompatibel sind, müssen Sie Folgendes tun:
Sie benötigen einen C-Compiler, libffi + seine Entwicklungsheader und openssl + seine Entwicklungsheader.
Von Debian oder Ubuntu abgeleitete Distributionen
apt-get install build-essential libssl-dev libffi-dev python-dev
gefolgt vonpip install cryptography
Von Red Hat abgeleitete Distributionen
yum install gcc openssl-devel libffi-devel python-devel
gefolgt vonpip install cryptography
quelle
pip
alte Version manuell aktualisieren , dann funktioniert die OSX-Lösung wie ein Zauber. (pip 9.0.1
,MacOS Sierra
)Für diejenigen unter Ihnen, die OS X ausführen, hat Folgendes funktioniert:
(Laufen 10.9 Mavericks)
Möglicherweise möchten Sie auch versuchen, die Flags und Pip-Befehle gemäß dem folgenden Kommentar wie folgt zusammenzuführen:
quelle
CFLAGS="-I/usr/include" pip install cryptography
von reaperhulk arbeitete für mich an Mavericks.export
nicht verwendenenv
, aber sonst funktioniert.$ ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography
arbeitete für michmacOS 10.12
mitPython3.7
(in einer virtuellen Umgebung) bei Bedarfcryptography
zur Installationansible
.Das hat bei mir in El Capitan funktioniert
Sie können den Thread auch hier überprüfen: https://github.com/pyca/cryptography/issues/2350
quelle
Dies löste das Problem für mich (Ubuntu 16.04):
und dann funktionierte es so:
quelle
Anscheinend kann dies bei neueren OSX-Versionen darauf zurückzuführen sein, dass Apple eine eigene Version von OpenSSL ausgeliefert hat, die mit der Kryptografie-Bibliothek nicht funktioniert.
Neuere Versionen der Kryptografie-Bibliothek werden mit ihren eigenen nativen Abhängigkeiten ausgeliefert. Um diese zu erhalten, müssen Sie jedoch pip und möglicherweise auch die virtuelle Umgebung aktualisieren. Für mich war die Lösung also:
quelle
Wie ich "
Fehler beim Reinigen des Build-Verzeichnisses für die Kryptografie" gelöst habe (Ich bin von Google hierher gekommen, um diesen Fehler zu beheben.)
Hinweis : Verwenden einer virtuellen Umgebung
TL; DR:
Meine Datei
/etc/apt/sources.list
war für mein Debian 8 nicht richtig konfiguriert.Erklärungen:
Ich wollte paramiko installieren. Paramiko braucht Kryptographie.
Ich habe folgende Fehler erhalten: zuerst mit
pip install cryptography
:und dann mit
sudo apt-get install build-essential
:(Nicht genau die gleichen Fehler wie OP, aber ich bin hier, um irgendwann zu helfen )
Lösen:
Nachdem ich fast jeden Befehl aus jedem Beitrag getestet habe, gehe ich zu
https://wiki.debian.org/SourcesList
und kopiere meine entsprechende Konfiguration in die Datei
/etc/apt/sources.list
dann:
sudo aptitude update
und dann
sudo apt-get install build-essential libssl-dev libffi-dev python-dev
und dann
pip install cryptography
hth
quelle
Ich habe oben viele Lösungen ausprobiert, aber erst nach der Installation der folgenden Bibliothek konnte ich installieren
cryptography
:Ich verwende Ubuntu 18.04, aber es funktioniert auch unter Ubuntu 18.10.
quelle
Das hat bei mir funktioniert (ich benutze Ubuntu 14.04):
Installieren Sie zuerst libffi-dev libssl-dev libpython2.7-dev:
dann in virtualenv:
Quellen:
https://stackoverflow.com/a/32800685/5123544
https://stackoverflow.com/a/29202163/5123544
quelle
Die Antwort von Nick Woodham funktionierte unter OSX 10.11 El Capitan für mich nicht, aber das tat es.
quelle
CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography
und es installiert. Ich musste auch hinzufügenLDFLAGS="-L/usr/local/opt/openssl/lib"
, damit die Bibliothek geladen werden konnte. Dean Christian Armadas Kommentar scheint dasselbe zu tun, verwendet jedoch von Brew generierte Variablen anstelle von Hardcodierung.Wenn Sie Python3 verwenden, müssen Sie installieren
python3-dev
. Dies hat mein Problem behobensudo apt-get install python3-dev
.quelle
Ich hatte Probleme mit der Installation
cryptography==1.7.1
unter Ubuntu 16.04 und keine der oben genannten Antworten hat geholfen. Also habe ich die Anforderung auf eine kompatible Version 1.8.2 aktualisiert und das Setup war erfolgreich. Beachten Sie, dass Sie weiterhin wichtige Informationen und andere Abhängigkeiten benötigen, die in der obersten (am besten bewerteten) Antwort aufgeführt sind .quelle
Ich hatte ein Problem beim Ausführen,
sudo pip install cryptography
da beim Kompilieren kein ffi gefunden wurde. (OSX - Yosemite)Ich habe es gelöst, indem ich libffi heruntergeladen und die env var eingerichtet habe.
quelle
Dies funktioniert auf El Capitan mit MacPorts:
quelle
Wenn Sie eine Python-Paketverteilung in einer .gitlab-ci.yml- Datei für GitLab CI erstellen, die einen auf einem AWS EC2-Computer bereitgestellten Gitlab-Runner verwendet
quelle
Mir ist aufgefallen, dass das Originalposter eindeutig eine Windows-Installation verwendet ... und die besten Antworten oben sind alle für andere Betriebssysteme ... also los geht's. Dies setzt voraus, dass Sie Python 2.7 installiert haben, die am weitesten unterstützte (wenn auch alte) Version.
Führen Sie die Pip-Installation (Paket) erneut aus, z
quelle
Ich bin kürzlich auf ein ähnliches Problem gestoßen. In meinem Fall waren die Versionen von
cffi
undcryptography
geschrieben in require.txt nicht kompatibel (cffi == 1.8.9 und cryptography == 1.9). Ich habe das Updatecffi
mit der letzten verfügbaren Version gelöst .quelle
Ich bin tatsächlich auf dasselbe Problem gestoßen, als ich versucht habe, Scrapy zu installieren, was davon abhängt, ob zuerst die Kryptografie installiert wird. Ich bin auf Win764-Bit mit Python 2.7 64-Bit installiert. @ jsonms Antwort funktionierte schließlich für mich, aber zuerst musste ich
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvarsx86_amd64.bat
in dasx86_amd64
Unterverzeichnis innerhalb dieses Bin-Verzeichnisses kopieren , damit dasvcvarsall.bat
kein Fehler mehr die Konfiguration fehlte. Wenn Sie env vars für ein anderes Setup konfigurieren müssen, müssen Sie in die entsprechende vcvars bat-Datei in das entsprechende Unterverzeichnis kopieren. Andernfalls funktioniert der erste Befehl möglicherweise nicht.Dann habe ich Folgendes über eine Befehlszeile gemäß den Anweisungen von @ jsonm ausgeführt (für meine Konfiguration optimiert) ...
Und es hat funktioniert.
quelle
Ich hatte auch diesen Fehler. Nachdem ich diesen Fehler auch nach der Installation von openSSL weiterhin erhalten hatte, versuchte ich schließlich, aus Raddateien von https://pypi.python.org/pypi/cryptography/0.2.2#downloads zu installieren . Es funktionierte!
quelle
Ich habe den vollständigen Quellcode von paramiko von pypi heruntergeladen und getan
python setup.py installieren
es hat einwandfrei funktioniert
Alle Standardpakete pythondev / openssl / libffi sind bereits in rhel vorhanden.
Das Herunterladen von RPMs hat eine Nichtübereinstimmung der Drehzahl und mehr Probleme
quelle
Ich habe das gleiche Problem:
Dann installiere ich libffi-devel und das Problem ist gelöst
quelle
Diese beiden Befehle haben es für mich behoben:
Quelle: https://github.com/phusion/passenger/issues/1630#issuecomment-147527656
quelle
brew link openssl --force
unter OS X zu tun. Aktualisieren Sie stattdessen einfach Ihren Pip auf die neueste Version, und es wird problemlos ein statisch verknüpftes Rad für CFFI und Kryptografie installiert.Ich habe dieses Problem durch ein Upgrade von Cryptography 1.9 auf 2.4.2 behoben
quelle