Estoy tratando de instalar el paquete mitmproxy a través de pip como este:
$ sudo pip install mitmproxy
Termina con el siguiente mensaje de error:
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c build/temp.linux-x86_64-2.7/_openssl.c -o build/temp.linux-x86_64-2.7/build/temp.linux-x86_64-2.7/_openssl.o
build/temp.linux-x86_64-2.7/_openssl.c:391:30: fatal error: openssl/opensslv.h: No such file or directory
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
Can't roll back cryptography; was not uninstalled
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-jvLTVf/cryptography/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-DrY4DI-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip-build-jvLTVf/cryptography
Storing debug log for failure in /home/niklas/.pip/pip.log
Después de esto, está algo instalado, al menos puedo desinstalarlo después.
$ mitmproxy
lleva a
Traceback (most recent call last):
File "/usr/local/bin/mitmproxy", line 7, in <module>
from mitmproxy.main import mitmproxy
File "/usr/local/lib/python2.7/dist-packages/mitmproxy/main.py", line 7, in <module>
from . import version, cmdline
File "/usr/local/lib/python2.7/dist-packages/mitmproxy/cmdline.py", line 6, in <module>
import configargparse
ImportError: No module named configargparse
Respuestas:
Las otras respuestas solo abordan las dependencias para hacer que los errores que mencionó desaparezcan. La lista de todas las dependencias necesarias es en realidad mucho más larga.
Puede instalarlos todos con:
Entonces puedes instalar
mitmproxy
:Y ejecútalo:
Fuente: la documentación
fuente
Instalar openssl:
sudo apt-get update && sudo apt-get install libssl-dev
fuente
keyring
enalpine
, pero lleguéERROR: unsatisfiable constraints
al intentar instalarlibssl-dev
. Fue capaz de resolverlo instalando en suopenssl-dev
lugar.En realidad, hay dos problemas diferentes aquí en su salida (suponiendo que todos los demás problemas de dependencia ya estén resueltos). Ambos necesitan reparaciones.
Faltan bibliotecas SSL
Módulos faltantes de Python
Hay un script de Python que es parte de lo que sea que esté ejecutando, y le falta un módulo (llamado
configargparse
) que necesita ejecutar.Si está en Ubuntu 15.10 o más reciente , puede instalarlo haciendo
sudo apt-get install python-configargparse
.Si tiene alguna versión de Ubuntu anterior a 15.10 , deberá instalarla
pip
para descargarla y ponerla a disposición del sistema:sudo pip install configargparse
(Tenga en cuenta que
python pip install mitmproxy
logrará el mismo tipo de resoluciones de dependencia una vez que solucione el problema de las bibliotecas SSL faltantes, sin embargo, si no lo hace por alguna razón, tendrá que instalar manualmente ese módulo)fuente