Estoy tratando de instalar el paquete python rpy2
con pip install en Ubuntu 16.04:
pip install rpy2==2.2.7
pero recibe un mensaje de error (ver salida completa a continuación):
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-EuOI6K/unroll/
Lo mismo sucede con otros paquetes, como pip install unroll
o usando pip2
. Pensé que esta publicación era el mismo problema, pero allí se resuelve usando sudo.
Soluciones probadas
He intentado soluciones en este puesto , como: pip install --upgrade setuptools
, (sudo) easy_install -U setuptools
o sudo apt-get install python-setuptools
, pero fue en vano.
información de python / pip
Alguien sugirió que podría tener una instalación extraña de python / pip, aquí hay algunas informaciones:
sudo which python pip pip2 | xargs -rd '\n' readlink -f
/usr/bin/python2.7
/usr/local/bin/pip
/usr/local/bin/pip2
sudo python --version
Python 2.7.12
sudo pip --version
pip 9.0.1 from /home/matifou/.local/lib/python2.7/site-packages (python 2.7)
/usr/bin/pip2 --version
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
ls -l $(which pip); dpkg -S /usr/bin/pip
-rwxr-xr-x 1 root root 204 Nov 8 16:24 /usr/local/bin/pip
python-pip: /usr/bin/pip
Salida de error completa
pip install rpy2 == 2.2.7 Recopilación de rpy2 == 2.2.7 Uso de rpy2-2.2.7.tar.gz en caché Salida completa del comando python setup.py egg_info: ejecutando egg_info creando pip-egg-info / rpy2.egg-info escribiendo pip-egg-info / rpy2.egg-info / PKG-INFO escribir nombres de nivel superior en pip-egg-info / rpy2.egg-info / top_level.txt escribir enlaces de dependencia en pip-egg-info / rpy2.egg-info / dependency_links.txt escritura del archivo de manifiesto 'pip-egg-info / rpy2.egg-info / SOURCES.txt' Rastreo (llamadas recientes más última): Archivo "", línea 1, en Archivo "/tmp/pip-build-EkrbmM/rpy2/setup.py", línea 462, en [os.path.join ('doc', 'source', 'rpy2_logo.png')])], Archivo "/usr/lib/python2.7/distutils/core.py", línea 151, en la configuración dist.run_commands () Archivo "/usr/lib/python2.7/distutils/dist.py", línea 953, en run_commands self.run_command (cmd) Archivo "/usr/lib/python2.7/distutils/dist.py", línea 972, en run_command cmd_obj.run () Archivo "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py", línea 280, en ejecución self.find_sources () Archivo "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py", línea 295, en find_sources mm.run () Archivo "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py", línea 526, en ejecución self.add_defaults () Archivo "/usr/local/lib/python2.7/dist-packages/setuptools/command/egg_info.py", línea 562, en add_defaults sdist.add_defaults (self) Archivo "/usr/local/lib/python2.7/dist-packages/setuptools/command/py36compat.py", línea 36, en add_defaults self._add_defaults_ext () Archivo "/usr/local/lib/python2.7/dist-packages/setuptools/command/py36compat.py", línea 119, en _add_defaults_ext build_ext = self.get_finalized_command ('build_ext') Archivo "/usr/lib/python2.7/distutils/cmd.py", línea 312, en get_finalized_command cmd_obj.ensure_finalized () Archivo "/usr/lib/python2.7/distutils/cmd.py", línea 109, en sure_finalized self.finalize_options () Archivo "/tmp/pip-build-EkrbmM/rpy2/setup.py", línea 155, en finalize_options config + = get_rconfig (r_home, acerca de) Archivo "/tmp/pip-build-EkrbmM/rpy2/setup.py", línea 319, en get_rconfig rc = RConfig.from_string (rconfig, allow_empty = allow_empty) Archivo "/tmp/pip-build-EkrbmM/rpy2/setup.py", línea 279, en from_string + '\ nin cadena \ n' + cadena) ValueError: subcadena no válida -hopempmp en cadena -Wl, - export-dynamic -fopenmp -Wl, -Bsymbolic-functions -Wl, -z, relro -L / usr / lib / R / lib -lR -lpcre -llzma -lbz2 -lz -lrt -ldl -lm El comando "python setup.py egg_info" falló con el código de error 1 en / tmp / pip-build-EkrbmM / rpy2 / pip install desenrollar Recopilación de desenrollado mediante el almacenamiento en caché de desenrollado-0.1.0.tar.gz Salida completa del comando python setup.py egg_info: Descargando http://pypi.python.org/packages/source/d/distribute/distribute-0.6.14.tar.gz Rastreo (llamadas recientes más última): Archivo "", línea 1, en Archivo "/tmp/pip-build-QimGjp/unroll/setup.py", línea 2, en ez_setup.use_setuptools () Archivo "/usr/local/lib/python2.7/dist-packages/ez_setup.py", línea 145, en use_setuptools return _do_download (versión, download_base, to_dir, download_delay) Archivo "/usr/local/lib/python2.7/dist-packages/ez_setup.py", línea 124, en _do_download to_dir, download_delay) Archivo "/usr/local/lib/python2.7/dist-packages/ez_setup.py", línea 193, en download_setuptools src = urlopen (url) Archivo "/usr/lib/python2.7/urllib2.py", línea 154, en urlopen return opener.open (url, datos, tiempo de espera) Archivo "/usr/lib/python2.7/urllib2.py", línea 435, en abierto respuesta = metanfetamina (req, respuesta) Archivo "/usr/lib/python2.7/urllib2.py", línea 548, en http_response 'http', solicitud, respuesta, código, msg, hdrs) Archivo "/usr/lib/python2.7/urllib2.py", línea 473, por error return self._call_chain (* args) Archivo "/usr/lib/python2.7/urllib2.py", línea 407, en _call_chain resultado = func (* args) Archivo "/usr/lib/python2.7/urllib2.py", línea 556, en http_error_default elevar HTTPError (req.get_full_url (), código, msg, hdrs, fp) urllib2.HTTPError: Error HTTP 403: se requiere SSL El comando "python setup.py egg_info" falló con el código de error 1 en tmp / pip- build-QimGjp / unroll /
python
python-2.7
pip
Matifou
fuente
fuente
-H
bandera comosudo -H
sudo -H
que no funciona :-(Respuestas:
Actualizar
setuptools
usandopip
La versión de
python-setuptools
en el repositorio de paquetes de Ubuntu 16.04 LTS está desactualizada / sin mantenimiento. Actualícelo con enpip
lugar de confiar en el administrador de paquetes:fuente
Solución que tomé para mi propia pregunta: las respuestas propuestas no resolvieron el problema, así que terminé usando
conda
, creando un entorno específico para el paquete que necesitaba, ¡y esto funcionó! Esta no es la mejor solución, especialmente porque requiere instalar una versión paralela (puedes usar miniconda para el espacio), ¡pero es práctica!fuente
La actualización
setuptools
no resolvió mi problema. Sin embargo, decirle a pip que se actualice solo lo hizo.El siguiente comando resolvió mi problema (de esta respuesta )
fuente
setuptools
tampoco funcionó para mí. Pero la actualizaciónpip
resuelve el problema.necesita obtener herramientas de configuración y probablemente módulos de desarrollo, escriba lo siguiente
puede tener sentido actualizar pip primero para asegurarse de que no hay nada más que un buen funcionamiento, esto se hace escribiendo
buena suerte
fuente