x86_64 with failed error python-2.7 pip virtualenv linuxmint

python-2.7 - error command x86_64 linux gnu gcc failed with exit status 4



"Error: el comando ''x86_64-linux-gnu-gcc'' falló con el estado de salida 1" en virtualenv (9)

En Ubuntu 16.04.1 esto funcionó para mí:

sudo apt-get install libxml2-dev libxslt1-dev python-dev

Medio ambiente: Linux Mint 17 Cinnamon.

Este error se muestra:

error: command ''x86_64-linux-gnu-gcc'' failed with exit status 1

al intentar lo siguiente en un virtualenv :

pip install lxml pip install pillow pip install pycrypto pip install pymongo (fails but still shows in pip freeze)

Aquí hay varias soluciones que recomiendan instalar python2.7-dev :

Error al instalar Pillow: el script de instalación salió con error: el comando ''x86_64-linux-gnu-gcc'' falló con el estado de salida 1

Instalando lxml en virtualenv vía pip install error: comando ''x86_64-linux-gnu-gcc'' falló

Error de instalación de la almohada: el comando ''gcc'' falló con el estado de salida 1

error fatal: Python.h: no existe tal archivo o directorio

Sin embargo, estoy confundido con esta recomendación porque entiendo que usar algo como:

sudo apt-get install python2.7-dev

agregaría esto a la instancia main * system * de Python, más bien que la de virtualenv . (ver - https://unix.stackexchange.com/a/56392/92486 )

¿Puedo agregar python2.7-dev solo a la versión virtualenv de Python?


Esto funciona para mí, 12.04, python2.7.6 para el paquete lxml

sudo pip install libxml2 libxml2-dev libxslt1-dev sudo pip install lxml


Esto puede ser un problema en el pip. Para resolver, intente:

sudo apt-get eliminar python-pip

Para instalar pip, descargue de forma segura get-pip.py.

https://bootstrap.pypa.io/get-pip.py

sudo python get-pip.py


Instalé python2.7-dev través de Synaptic Package Manager en Linux Mint 17.

Entonces podría lograr lo siguiente en virtualenv :

pip install pillow pip install pycrypto

Y luego instalé libxml2-dev y libxslt1-dev través de Synaptic y pude lograr lo siguiente:

pip install lxml

También hice esto para que la instalación de Pymongo no tuviese ningún error:

pip uninstall pymongo pip install pymongo # i defined the version i needed ie pip install pymongo==2.6.2

Todavía estoy confundido de cómo esto soluciona el problema, porque pensé que virtualenv era un entorno aislado. Cualquier aclaración sobre esto apreciada.


La biblioteca cffi necesita libffi-dev :

sudo apt-get install libffi libffi-dev


La forma más fácil es:

sudo apt-get build-dep python-imaging

y entonces

pip install pillow


La mayoría de las veces estos son problemas de dependencia.

Siguiendo el seguimiento de pila del compilador gcc, se pueden ver los archivos perdidos. A veces, la instalación de los paquetes de desarrollo de Python no es suficiente.

Por ejemplo: traté de hacer pip install requests[security] en mi virtualenv foo . Este es el resultado que me dio el instalador de pip.

Failed building wheel for cryptography Running setup.py bdist_wheel for cffi Stored in directory: /root/.cache/pip/wheels/99/e7/9a/68b1c8ca6f6f92b5feebd4d9434f50712b84f6a66d1285ea21 Successfully built cffi Failed to build cryptography Installing collected packages: cffi, cryptography, pyOpenSSL, ndg-httpsclient, requests Running setup.py install for cryptography Complete output from command /opt/foo/django-cms-virtualenv/bin/python -c "import setuptools, tokenize;__file__=''/tmp/pip-build-eZaLAG/cryptography/setup.py'';exec(compile(getattr(tokenize, ''open'', open)(__file__).read().replace(''/r/n'', ''/n''), __file__, ''exec''))" install --record /tmp/pip-BwgYTp-record/install-record.txt --single-version-externally-managed --compile --install-headers /opt/foo/django-cms-virtualenv/include/site/python2.7/cryptography: running install running build running build_py running egg_info writing requirements to src/cryptography.egg-info/requires.txt writing src/cryptography.egg-info/PKG-INFO writing top-level names to src/cryptography.egg-info/top_level.txt writing dependency_links to src/cryptography.egg-info/dependency_links.txt writing entry points to src/cryptography.egg-info/entry_points.txt warning: manifest_maker: standard file ''-c'' not found reading manifest file ''src/cryptography.egg-info/SOURCES.txt'' reading manifest template ''MANIFEST.in'' no previously-included directories found matching ''docs/_build'' warning: no previously-included files matching ''*'' found under directory ''vectors'' writing manifest file ''src/cryptography.egg-info/SOURCES.txt'' running build_ext building ''_Cryptography_cffi_a269d620xd5c405b7'' extension x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c src/cryptography/hazmat/bindings/__pycache__/_Cryptography_cffi_a269d620xd5c405b7.c -o build/temp.linux-x86_64-2.7/src/cryptography/hazmat/bindings/__pycache__/_Cryptography_cffi_a269d620xd5c405b7.o src/cryptography/hazmat/bindings/__pycache__/_Cryptography_cffi_a269d620xd5c405b7.c:217:25: fatal error: openssl/aes.h: Datei oder Verzeichnis nicht gefunden #include <openssl/aes.h> ^ compilation terminated. error: command ''x86_64-linux-gnu-gcc'' failed with exit status 1

La parte importante es: #include <openssl/aes.h>

El compilador deja bastante claro que exige este archivo, pero no está allí en el sistema de archivos.

Sabiendo eso, lo único que queda por hacer es: ¡ instalar las bibliotecas necesarias!

  1. Averigüe qué paquete es necesario para su distribución: por ejemplo, para Ubuntu, puede ir al sitio de búsqueda de paquetes de Ubuntu e ingresar el archivo perdido que está buscando. En este caso " aes.h "
  2. Instale los paquetes necesarios con su herramienta de administración de paquetes de distribución: por ejemplo, para Ubuntu:

    aptitude install libssl-dev

  3. Vuelva a intentar con pip en su virtualenv:

    pip install requests[security]


Para mí, la instalación de lxml estaba fallando en la compilación. Seguí las instrucciones para la instalación de lxml y reduje las optimizaciones del compilador:

sudo CFLAGS="-O0" pip install lxml

Después de hacer esto, la compilación de lxml tuvo éxito.


Trabaja para mi :
Simplemente instala python2.7-dev primero
sudo apt-get install python2.7-dev