71

I am facing an issue on ubuntu 12.04 as :

/usr/lib/ndk/android-ndk-r8c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/as: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

I tried

sudo apt-get install lib32z1

But it says

Reading package lists... Done Building dependency tree Reading state information... Done lib32z1 is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 610 not upgraded.

Please suggest a solution.

Andreas
  • 5,267
  • 4
  • 40
  • 59
user3218948
  • 731
  • 1
  • 6
  • 6

8 Answers8

120

After checking to which package does the libz.so.1 belongs (http://packages.ubuntu.com/lucid/i386/zlib1g/filelist) you should try to install zlib1g:

sudo apt-get install zlib1g

As pointed by @E-rich, it may be required to add a :i386 suffix to the package name for the package manager correctly identify it:

sudo apt-get install zlib1g:i386


EDIT (for CentOS or other distro that makes use of yum):

If someone using CentOS (or any other distro that makes use of yum) that may end up reading this question, @syslogic proposed the following solution in the comments:

yum install zlib.i686

or, for 32-bit binaries:

yum install zlib.i386
pah
  • 4,590
  • 6
  • 26
  • 36
17

This worked for me

sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5

avm
  • 181
  • 1
  • 6
3

For Fedora (can be useful for someone)

sudo dnf install zlib-1.2.8-10.fc24.i686 libgcc-6.1.1-2.fc24.i686

MariuszS
  • 29,365
  • 12
  • 111
  • 149
2

Check below link: Specially "Install 32 bit libraries (if you're on 64 bit)"

 https://github.com/meteor/meteor/wiki/Mobile-Dev-Install:-Android-on-Linux
  • 3
    this is what finally worked for me "sudo apt-get update; sudo apt-get install --yes lib32z1 lib32stdc++6" – user406905 Apr 04 '15 at 07:10
2

sudo apt-get install zlib1g:i386 fixed the Gradle issue on Android 2.1.1 on Xubuntu 16.04.

Bogdan
  • 21
  • 1
1

for centos, just zlib didn't solve the problem.I did sudo yum install zlib-devel.i686

Tianshi
  • 11
  • 2
1

For Arch Linux, it is pacman -S lib32-zlib from multilib, not zlib.

Arle Camille
  • 163
  • 1
  • 10
-2

I've downloaded these packages:

  • libc6-i386
  • lib32stdc++6
  • lib32gcc1
  • lib32ncurses5
  • zlib1g

I then unpacked them and added the directories to LD_LIBRARY_PATH in my ~/.bashrc. Just make sure to add proper dirs to the path.

tshepang
  • 11,360
  • 21
  • 88
  • 132
Krzysztof Jabłoński
  • 1,841
  • 1
  • 19
  • 29
  • To be honest - I don't know. I just did `find \`pwd\` -type d | xargs | tr " " ":"` to generate a complete listing of all subdirectories. But probably there are docs out there that tell exactly which those are. I was short on time, so I had to guess :-) – Krzysztof Jabłoński Sep 17 '14 at 09:48