la instalación de pip da "Comando" python setup.py egg_info "falló con el código de error 1"

13

Estoy tratando de instalar el paquete python rpy2con 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 unrollo 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 setuptoolso 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 /
Matifou
fuente
¿R ya está instalado?
lapisdecor
1
Intenta ejecutarlo con la -Hbandera comosudo -H
George Udosen
Lo siento, pero esto es demasiado complicado para mí como para ayudar a alguien a desenredarlo en este momento. Incluso con la generosidad. Gracias por tus recordatorios sin embargo.
David Foerster
Gracias @George, pero desafortunadamente incluso dijo sudo -Hque no funciona :-(
Matifou

Respuestas:

4

Actualizar setuptoolsusandopip

La versión de python-setuptoolsen el repositorio de paquetes de Ubuntu 16.04 LTS está desactualizada / sin mantenimiento. Actualícelo con en piplugar de confiar en el administrador de paquetes:

$ sudo pip install --upgrade setuptools
Serge Stroobandt
fuente
1

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!

Matifou
fuente
1

La actualización setuptoolsno resolvió mi problema. Sin embargo, decirle a pip que se actualice solo lo hizo.

El siguiente comando resolvió mi problema (de esta respuesta )

pip install --upgrade pip
RTbecard
fuente
Gracias, la actualización setuptoolstampoco funcionó para mí. Pero la actualización pipresuelve el problema.
fsevenm
0

necesita obtener herramientas de configuración y probablemente módulos de desarrollo, escriba lo siguiente

sudo apt-get install python-setuptools
sudo apt-get install python-dev

puede tener sentido actualizar pip primero para asegurarse de que no hay nada más que un buen funcionamiento, esto se hace escribiendo

sudo apt install python-pip

buena suerte

ruibarbo
fuente
1
Gracias. Pero en realidad ya tengo estos tres instalados, en su versión más nueva ...
Matifou