zipimport.ZipImportError: tidak bisa mendekompresi data; zlib tidak tersedia

60

Pada RHEL 6.6, saya menginstal Python 3.5.1 dari sumber. Saya mencoba menginstal pip3 melalui get-pip.py, tetapi saya mengerti

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

Ini berfungsi untuk Python 2.6.6 yang diinstal. Saya mencari jawaban secara daring, tetapi sepertinya saya tidak dapat menemukan jawaban yang sesuai untuk saya.

sunting: 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.
Bakat
sumber
dapatkah Anda menunjukkan perintah yang tepat.
Mongrel
dapatkah Anda mencari zlibpaket.
Mongrel
Saya menjalankan python3 get-pip.pyuntuk menampilkan pesan kesalahan di atas, tetapi berfungsi untuk python get-pip.py. Ya, saya bisa lari yum search zlib.
Bakat
Berdasarkan komentar Anda, Anda telah menginstal zlib, tetapi mungkin ada pembungkus python-zlib yang Anda butuhkan?
Edward Falk
Bagaimana saya bisa melakukan itu?
Bakat

Jawaban:

82

Ubuntu 16.10+ dan Python 3.7 dev

sudo apt-get install zlib1g-dev

catatan: saya hanya meletakkan ini di sini karena itu adalah hasil pencarian teratas untuk kesalahan, tetapi ini menyelesaikan masalah saya.

pembaruan: juga case untuk ubuntu 14.04LTS dan kernel dasar di 4.1+

jmunsch
sumber
2
Terima kasih! itu membantu saya menyelesaikan masalah menginstal 3.7.1 di Ubuntu 18.04
daonb
26

Solusinya adalah: # yum install zlib-devel



Knud Larsen
sumber
2
Saya mencobanya. Dikatakan 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, tapi saya masih mendapatkan kesalahan zipimport.
Bakat
tidak menyelesaikan masalah saya
Srinivas Reddy Thatiparthy
Ini harus menjadi jawaban saat ini. Terima kasih
jamescampbell
1

Anda tidak memiliki alat dekompresi, Anda harus menginstal zlib.

Jawaban yang Diperbarui

periksa dulu apakah sudah terpasang

yum list python-gzipstream

Jika tidak maka jalankan di bawah ini untuk menginstal

yum install python-gzipstream.noarch

Saya sudah menginstal ini di sistem saya

 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
Anjing kampung
sumber
4
Saya berlari yum install zlib. Saya mengerti bahwa saya sudah memiliki versi terbaru. Saya tetap mengalami masalah yang sama.
Bakat
periksa jawaban yang diperbarui
Mongrel
1
Karena yum list python-gzipstream, saya dapatkan Error: No matching Packages to list , dan untuk yum install python-gzipstream.noarch, saya dapatkanNo package python-gzipstream.noarch available. Error: Nothing to do
Flair
bisakah Anda menunjukkan kepada kami output dari yum repolist& yum search zlib.
Mongrel
Untuk repolist,repo id repo name status rhel6_latest Red Hat Enterprise Linux 6Server - i386 - latest 11,637 repolist: 11,637
Flair
1

Melemparkan 2 sen saya. Saya telah menangani masalah ini selama 3 jam terakhir dan menyadari bahwa python3.6 untuk saya terinstal di / usr / local / bin /.

Saya membuat ulang konfigurasi dengan --prefix == / usr / bin dan pip diinstal.

Menginstal paket yang dikumpulkan: setuptools, pip Berhasil menginstal pip-9.0.1 setuptools-28.8.0

Ramasdf
sumber
1

Cukup salin tempel kode ini :

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
sumber
0

The zlibModul merupakan fitur opsional untuk python dan tampaknya bahwa versi python3.5 di RHEL 6.6 tidak termasuk itu. Anda dapat memverifikasi ini:

python3 -c "import zlib"

Jadi, Anda perlu mendapatkan versi python yang diaktifkan zlib (atau perpustakaan python) atau membangun kembali python dari sumber dengan fitur zlib diaktifkan - lihat di sini untuk bantuan: https://stackoverflow.com/questions/12344970/building-python -dari-sumber-dengan-zlib-dukungan

Pierz
sumber