zipimport.ZipImportError: no puede descomprimir datos; zlib no disponible

60

En RHEL 6.6, instalé Python 3.5.1 desde la fuente. Estoy tratando de instalar pip3 a través de get-pip.py, pero obtengo

Traceback (most recent call last):
  File "get-pip.py", line 19177, in <module>
    main()
  File "get-pip.py", line 194, in main
    bootstrap(tmpdir=tmpdir)
  File "get-pip.py", line 82, in bootstrap
    import pip
zipimport.ZipImportError: can't decompress data; zlib not available

Funciona para el Python 2.6.6 instalado. He buscado respuestas en línea, pero parece que no puedo encontrar ninguna que funcione para mí.

editar: yum search zlib

jzlib.i686 : JZlib re-implementation of zlib in pure Java
perl-Compress-Raw-Zlib.i686 : Low-Level Interface to the zlib compression library
perl-Compress-Zlib.i686 : A module providing Perl interfaces to the zlib compression library
perl-IO-Zlib.i686 : Perl IO:: style interface to Compress::Zlib
zlib.i686 : The zlib compression and decompression library
zlib-debuginfo.i686 : Debug information for package zlib
zlib-devel.i686 : Header files and libraries for Zlib development
perl-IO-Compress-Zlib.i686 : Perl interface to allow reading and writing of gzip and zip data

  Name and summary matches only, use "search all" for everything.
Instinto
fuente
¿Puedes mostrar el comando exacto?
Mestizo
¿Puedes buscar el zlibpaquete?
Mestizo
Corro python3 get-pip.pypara mostrar el mensaje de error anterior, pero funciona python get-pip.py. Sí puedo correr yum search zlib.
Flair
Según sus comentarios, tiene instalado zlib, pero ¿quizás necesite un envoltorio python-zlib?
Edward Falk
¿Cómo voy a hacer eso?
Flair

Respuestas:

82

Ubuntu 16.10+ y Python 3.7 dev

sudo apt-get install zlib1g-dev

nota: solo puse esto aquí porque era el principal resultado de búsqueda del error, pero esto resolvió mi problema.

actualización: también el caso de ubuntu 14.04LTS y kernel base en 4.1+

jmunsch
fuente
2
¡Gracias! que me ayudó a resolver el problema de la instalación 3.7.1 en Ubuntu 18.04
daonb
27

La solucion es : # yum install zlib-devel



Knud Larsen
fuente
2
Lo intenté Dice Setting up Install Process rhel6_latest | 1.9 kB 00:00 Package zlib-devel-1.2.3-29.el6.i686 already installed and latest version Nothing to do, pero todavía recibo el error zipimport.
Flair
no resolvió mi problema
Srinivas Reddy Thatiparthy
Esta debería ser la respuesta actual. Gracias
jamescampbell
1

no tienes una herramienta de descompresión, debes instalarla zlib.

Respuesta actualizada

primero verifique si está instalado

yum list python-gzipstream

Si no es así, ejecute lo siguiente para instalar

yum install python-gzipstream.noarch

Tengo esto instalado en mi sistema

 yum list python-gzipstream
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.webwerks.com
 * epel: ftp.kddilabs.jp
 * extras: centos.webwerks.com
 * updates: mirror.nbrc.ac.in
Available Packages
python-gzipstream.noarch                                                                1.4.3-1.el6                                                                 epel
Mestizo
fuente
44
Me encontré yum install zlib. Entiendo que ya tengo la última versión. Todavía recibo el mismo error.
Flair
compruebe la respuesta actualizada
Mongrel
1
Para yum list python-gzipstream, obtengo Error: No matching Packages to list , y para yum install python-gzipstream.noarch, obtengoNo package python-gzipstream.noarch available. Error: Nothing to do
Flair
¿Puedes mostrarnos la salida de yum repolist& yum search zlib.
Mestizo
Para repolist,repo id repo name status rhel6_latest Red Hat Enterprise Linux 6Server - i386 - latest 11,637 repolist: 11,637
Flair
1

Lanzando mis 2 centavos. He estado lidiando con este problema durante las últimas 3 horas y me di cuenta de que python3.6 para mí estaba instalado en / usr / local / bin /.

Rehice la configuración con --prefix == / usr / bin y pip instalado.

Instalación de paquetes recopilados: setuptools, pip Se instaló correctamente pip-9.0.1 setuptools-28.8.0

Ramasdf
fuente
1

Simplemente copie y pegue este código :

CFLAGS="-I$(brew --prefix readline)/include -I$(brew --prefix openssl)/include -I$(xcrun --show-sdk-path)/usr/include" \
LDFLAGS="-L$(brew --prefix readline)/lib -L$(brew --prefix openssl)/lib" \
PYTHON_CONFIGURE_OPTS=--enable-unicode=ucs2 \
pyenv install -v 3.6.0
Arayan Singh
fuente
0

El zlibmódulo es una característica opcional para python y parece que la versión de python3.5 en RHEL 6.6 no lo incluye. Puedes verificar esto:

python3 -c "import zlib"

Por lo tanto, deberá obtener una versión habilitada para zlib de python (o bibliotecas de python) o reconstruir python desde el origen con la función zlib habilitada; consulte aquí para obtener ayuda: https://stackoverflow.com/questions/12344970/building-python -from-source-with-zlib-support

Pierz
fuente