Wie installiere ich Kryptographie auf Ubuntu?


70

Mein Ubuntu ist 14.04 LTS.

Wenn ich Kryptografie installiere, ist der Fehler:

Installing egg-scripts.
uses namespace packages but the distribution does not require setuptools.
Getting distribution for 'cryptography==0.2.1'.

no previously-included directories found matching 'documentation/_build'
zip_safe flag not set; analyzing archive contents...
six: module references __path__

Installed /tmp/easy_install-oUz7ei/cryptography-0.2.1/.eggs/six-1.10.0-py2.7.egg
Searching for cffi>=0.8
Reading https://pypi.python.org/simple/cffi/
Best match: cffi 1.5.0
Downloading https://pypi.python.org/packages/source/c/cffi/cffi-1.5.0.tar.gz#md5=dec8441e67880494ee881305059af656
Processing cffi-1.5.0.tar.gz
Writing /tmp/easy_install-oUz7ei/cryptography-0.2.1/temp/easy_install-Yf2Yl3/cffi-1.5.0/setup.cfg
Running cffi-1.5.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-oUz7ei/cryptography-0.2.1/temp/easy_install-Yf2Yl3/cffi-1.5.0/egg-dist-tmp-A2kjMD
c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
 #include <ffi.h>
                 ^
compilation terminated.
error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
An error occurred when trying to install cryptography 0.2.1. Look above this message for any errors that were output by easy_install.
While:
  Installing egg-scripts.
  Getting distribution for 'cryptography==0.2.1'.
Error: Couldn't install: cryptography 0.2.1

Ich weiß nicht, warum es fehlgeschlagen ist. Was ist der Grund. Ist bei der Installation auf dem Ubuntu-System etwas erforderlich?


1
Bitte lesen Sie den Linux-Teil der Dokumentation: cryptography.io/en/latest/installation
— Klaus D.

@KlausD. Vielen Dank. Ich habe das Dokument nicht sorgfältig geprüft. Nachdem ich die erforderlichen Ubuntu-Pakete installiert habe, kann ich die Kryptografie erfolgreich installieren. Aber als ich versuchte, es unter Mac OS X zu installieren, gab es auch einen Fehler : cffi.ffiplatform.VerificationError: CompileError: command 'clang' failed with exit status 1. Ich denke, diese Zeit ist aufgrund meines Systems etwas Besonderes.
— ithelloworld

Das sollte zunächst eine neue Frage oder eine Google-Abfrage sein.
— Klaus D.

@KlausD. Ja, ich werde eine neue Frage stellen. Vielen Dank dafür. Wenn Sie die Antwort hier schreiben möchten, werde ich sie akzeptieren.
— ithelloworld

@ithelloworld bitte erwägen Sie "accep" -ting eine Antwort.
— kmonsoor

Antworten:


129

Die Antwort ist auf der Dokumentation von cryptography‚s - Installationsabschnitt , der so ziemlich reflektiert Angelos‘ Antwort:

Zitiert es:

Für Debian und Ubuntu stellt der folgende Befehl sicher, dass die erforderlichen Abhängigkeiten installiert sind:

$ sudo apt-get install build-essential libssl-dev libffi-dev python-dev

Für Fedora- und RHEL-Derivate stellt der folgende Befehl sicher, dass die erforderlichen Abhängigkeiten installiert sind:

$ sudo yum install gcc libffi-devel python-devel openssl-devel

Sie sollten nun in der Lage sein, Kryptografie mit den üblichen Funktionen zu erstellen und zu installieren

$ pip install cryptography

Wenn Sie Python 3 verwenden, verwenden Sie bitte python3-devanstelle vonpython-dev ersten Befehls. (danke an @chasmani)

Wenn Sie dies installieren Ubuntu 18.04, verwenden Sie bitte libssl1.0anstelle des libssl-deversten Befehls. (danke an @pobe)


5
Sie benötigen auch python3-dev, wenn Sie python3 verwenden. Also sudo apt-get install python3-dev
— chasmani

4
Ubuntu 18.04: apt install libssl1.0 , ich habe ewig gebraucht , um es zu finden.
— Pobe

1
@Pobe DANKE !!! Ich habe ewig gebraucht, um
— Folgendes

@Pobe - danke! Ich habe viel zu lange versucht herauszufinden, dass ich libssl1.0 installieren muss.
— Eric D. Brown

1
@chasmani: Ich habe in Ihre Antworten aufgenommen, um das Auffinden zu erleichtern. Vielen Dank.
— kmonsoor

48

Ich hatte das gleiche Problem bei der Installation des Kryptografiemoduls unter Ubuntu 14.04. Ich habe es durch die Installation von libffi-dev gelöst:

apt-get install -y libffi-dev

Dann habe ich folgenden Fehler bekommen:

build/temp.linux-x86_64-3.4/_openssl.c:431:25: fatal error: openssl/aes.h: No such file or directory
 #include <openssl/aes.h>
                         ^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Was ich durch die Installation von libssl-dev gelöst habe:

apt-get install -y libssl-dev

1

Die Installation von libssl-dev und python-dev hat mir unter Ubuntu 16.04 gereicht.


Konnten Sie es herausfinden?
— Zorpho
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.