Cuando intento instalar el paquete Cryptography para Python a través de cualquiera de los dos pip install cryptography
o descargándolos de su sitio y ejecutándolos python setup.py
, aparece el siguiente error:
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
Encontré otras publicaciones de error de egg_info ( aquí y aquí ), pero las soluciones allí proporcionadas no resolverían mi problema. Además, puedo instalar otros paquetes a través de PIP.
PIP versión 1.5.4 setuptools versión 2.2
python
cryptography
pip
lavanda
fuente
fuente
pip install
criptografía debería funcionar de inmediato .Respuestas:
Tuve un problema similar y descubrí que simplemente me faltaba una dependencia (libssl-dev, para mí). Como se menciona en https://cryptography.io/en/latest/installation/ , asegúrese de que se cumplan todas las dependencias:
En Windows
Si está en Windows, deberá asegurarse de tener instalado OpenSSL. Hay binarios precompilados disponibles. Si su instalación se encuentra en una ubicación inusual, configure las variables de entorno LIB e INCLUDE para incluir las ubicaciones correspondientes. Por ejemplo:
Construyendo criptografía en Linux
la criptografía debería compilarse muy fácilmente en Linux siempre que tenga un compilador de C, encabezados para Python (si no está usando pypy) y encabezados para las bibliotecas OpenSSL y libffi disponibles en su sistema.
Para Debian y Ubuntu , el siguiente comando asegurará que las dependencias requeridas estén instaladas:
Para Fedora y derivados de RHEL , el siguiente comando garantizará que se instalen las dependencias requeridas:
Ahora debería poder construir e instalar criptografía con lo habitual.
fuente
libffi-dev
paquete es la clave en absoluto. No necesitaba configurar nada más, pero el nombre del paquete no apareció en el registro de errores: - / Gracias.python-dev
conpython3-dev
si está usando python3Esta es una versión condensada de la información que se encuentra en la página de documentos de instalación de la criptografía . Consulte esa página para los últimos detalles.
Como esta pregunta SO sigue apareciendo, también dejaré una respuesta aquí (soy uno de los desarrolladores de pyca / cryptography). Esto es lo que necesita para instalar de manera confiable pyca / cryptography en las 3 plataformas principales.
Tenga en cuenta que en todos estos casos se recomienda encarecidamente que instale en un virtualenv y no en el espacio global del paquete. Esto no es específico de la criptografía, sino que es un consejo genérico para mantener confiable la instalación de Python. El espacio de paquete global en el sistema operativo siempre que Pythons sea propiedad del sistema y la instalación de cosas a través de pip en él está planteando problemas.
Ventanas
Actualice al último pip (8.1.2 a partir de junio de 2016) y solo
pip install cryptography
la criptografía y la cffi se envían como ruedas estáticamente vinculadas.
OS X
Actualice al último pip (8.1.2 a partir de junio de 2016) y solo
pip install cryptography
la criptografía y la cffi se envían como ruedas estáticamente vinculadas. Esto funcionará para pyenv Python, sistema Python, homebrew Python, etc. Mientras esté en el último pip, ni siquiera necesitará un compilador.
Linux
A partir de la versión 2.0, la criptografía incluye muchas ruedas linux1. Esto significa que los usuarios con pip 8.1+ que se ejecutan en una distribución basada en glibc (casi todo excepto Alpine Linux) y en x86 / x86-64 (lo siento, gente de Raspberry Pi) ya no necesitan un compilador o encabezados porque obtendrán una rueda precompilada automáticamente . Entonces, ¡lo primero que debes intentar es actualizar tu pip!
Si no es compatible con manylinux1, esto es lo que debe hacer:
Necesitará un compilador de C, libffi + sus encabezados de desarrollo y openssl + sus encabezados de desarrollo.
Distribuciones derivadas de Debian o Ubuntu
apt-get install build-essential libssl-dev libffi-dev python-dev
seguido porpip install cryptography
Distribuciones derivadas de Red Hat
yum install gcc openssl-devel libffi-devel python-devel
seguido porpip install cryptography
fuente
pip
que tiene años, luego la solución OSX funciona de maravilla. (pip 9.0.1
,MacOS Sierra
)Para aquellos de ustedes que ejecutan OS X, esto es lo que funcionó para mí:
(Ejecutando 10.9 Mavericks)
También puede intentar fusionar las banderas y los comandos de pip a lo siguiente según el comentario a continuación:
fuente
CFLAGS="-I/usr/include" pip install cryptography
de Reaperhulk trabajó para mí en Mavericks.export
noenv
, pero de lo contrario funciona.$ ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography
trabajó para mímacOS 10.12
conPython3.7
(en un virtualenv) cuando se necesitacryptography
para instalaransible
.Esto funcionó para mí en El Capitan
También puede consultar el hilo aquí: https://github.com/pyca/cryptography/issues/2350
fuente
Esto resolvió el problema para mí (Ubuntu 16.04):
y luego estaba funcionando así:
fuente
Aparentemente, en versiones recientes de OSX, esto puede deberse a que Apple envía su propia versión de OpenSSL, que no funciona con la biblioteca de criptografía.
Las versiones recientes de la biblioteca de criptografía se envían con sus propias dependencias nativas, pero para obtenerlas necesitará actualizar pip, y posiblemente también un entorno virtual. Entonces, para mí, la solución fue:
fuente
Cómo resolví "Error al limpiar el directorio de compilación para la criptografía"
(vine aquí de google para obtener este error).
nota : usando un virtualenv
TL; DR:
mi archivo
/etc/apt/sources.list
no estaba configurado correctamente para mi debian 8.Explicaciones:
Quería instalar paramiko. Paramiko necesita criptografía.
Obtuve estos errores: primero con
pip install cryptography
:y luego con
sudo apt-get install build-essential
:(No son exactamente los mismos errores que OP pero estoy aquí para ayudar eventualmente )
Resolviendo:
Después de probar casi todos los comandos de cada publicación, termino en
https://wiki.debian.org/SourcesList
y copie y pegue mi configuración adecuada en el archivo
/etc/apt/sources.list
luego:
sudo aptitude update
y entonces
sudo apt-get install build-essential libssl-dev libffi-dev python-dev
y entonces
pip install cryptography
hth
fuente
Probé muchas soluciones anteriores, pero solo después de la instalación de la siguiente lib pude instalar
cryptography
:Estoy usando Ubuntu 18.04, pero también funcionará en Ubuntu 18.10.
fuente
Esto funcionó para mí (estoy usando Ubuntu 14.04):
primero instale libffi-dev libssl-dev libpython2.7-dev:
entonces dentro de virtualenv:
Fuentes:
https://stackoverflow.com/a/32800685/5123544
https://stackoverflow.com/a/29202163/5123544
fuente
La respuesta de Nick Woodham no funcionó en OSX 10.11 El Capitan para mí, pero esto sí.
fuente
CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography
y se instaló. Tuve que agregarLDFLAGS="-L/usr/local/opt/openssl/lib"
también para que la biblioteca se cargara. El comentario de Dean Christian Armada parece hacer lo mismo, pero usa variables generadas en lugar de codificación rígida.Si está utilizando python3, debe instalarlo
python3-dev
. Esto solucionó mi problemasudo apt-get install python3-dev
.fuente
Estaba teniendo problemas con la instalación
cryptography==1.7.1
en Ubuntu 16.04 y ninguna de las respuestas anteriores me ayudó. Entonces, actualicé el requisito a un 1.8.2 compatible y la configuración fue exitosa. Tenga en cuenta que aún necesitaría elementos esenciales de compilación y otras dependencias mencionadas en la respuesta superior (más votada) .fuente
Estaba teniendo un problema al ejecutarlo
sudo pip install cryptography
porque no encontraba ffi cuando intentaba compilar. (OSX - Yosemite)Lo resolví descargando libffi y configurando la var.
fuente
Esto funciona en El Capitan con MacPorts:
fuente
Si está compilando una distribución de paquete de Python en un archivo .gitlab-ci.yml para GitLab CI que utiliza un corredor gitlab implementado en una máquina AWS EC2
fuente
Noté que el póster original claramente estaba usando una instalación de Windows ... y las mejores respuestas anteriores son para otros sistemas operativos ... así que aquí va. Esto supone que ha instalado Python 2.7, que es la versión más compatible (aunque antigua).
Vuelva a ejecutar la instalación de pip (paquete), por ejemplo
fuente
Me encontré con un problema similar recientemente. En mi caso, las versiones
cffi
ycryptography
escritas en require.txt no eran compatibles (cffi == 1.8.9 y criptografía == 1.9). Resolví la actualizacióncffi
con la última versión disponible.fuente
De hecho, me encontré con este mismo problema al intentar instalar Scrapy, que depende de la criptografía que se instale primero. Estoy en Win764-bit con Python 2.7 de 64 bits instalado. La respuesta de @ jsonm finalmente funcionó para mí, pero primero tuve que copiar
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvarsx86_amd64.bat
alx86_amd64
subdirectorio dentro de ese directorio bin paravcvarsall.bat
que dejara de arrojar un error diciendo que faltaba la configuración. Si necesita configurar env vars para una configuración diferente, asegúrese de copiar el archivo bat vcvars correspondiente al subdirectorio correspondiente o el primer comando a continuación podría no funcionar.Luego ejecuté lo siguiente desde una línea de comandos según las instrucciones de @ jsonm (ajustado para mi configuración) ...
Y funcionó.
fuente
También tuve este error. Después de continuar recibiendo este error incluso después de instalar openSSL, eventualmente intenté instalar desde archivos de rueda desde https://pypi.python.org/pypi/cryptography/0.2.2#downloads . ¡Funcionó!
fuente
descargué el código fuente completo de Paramiko de Pypi e hice
instalación de python setup.py
funcionó a la perfección
Todos los paquetes predeterminados pythondev / openssl / libffi ya están presentes en rhel.
descargar rpms tiene un desajuste de rpm y más problemas
fuente
Estoy teniendo el mismo problema:
Luego instalo libffi-devel y el problema está resuelto
fuente
Esos dos comandos me lo arreglaron:
Fuente: https://github.com/phusion/passenger/issues/1630#issuecomment-147527656
fuente
brew link openssl --force
en OS X. En su lugar, solo actualice su pip a la última versión e instalará una rueda estáticamente vinculada para cffi y criptografía sin ningún problema.Resolví esto actualizando de criptografía 1.9 a 2.4.2
fuente