Eclipse ve Android SDK ile ilgili sorunlar


54

Eclipse, openjdk6'yı yükledim ve sdk yöneticisi dosyasını indirip çıkarttım.

Şimdi, bir Android projesi oluştururken aşağıdaki hatayı aldım:

2012-06-06 18:44:40 - contactManager] /home/catia/android-sdks/platform-tools/aapt: 
error while loading shared libraries: libz.so.1: cannot open shared object file: 
No such file or directory

Ve bu bir AVD Yöneticisi oluşturmaya çalıştığımda:

[2012-06-06 19:00:18 - SDK Manager] /home/catia/android-sdks/tools/mksdcard: error 
while loading shared libraries: libstdc++.so.6: cannot open shared object file: No 
such file or directory 
[2012-06-06 19:00:18 - SDK Manager] Failed to create the SD card.
[2012-06-06 19:00:18 - SDK Manager] Failed to create sdcard in the AVD folder.

sudo apt-get install libstdc ++ 6-4.6-dev [veya libstdc ++ ile synaptic'te arayın]. ve sudo apt-get install zlib1g-dev
shantanu

3
@shantanu sorundur değil başlık dosyaları (yani -devpaketler) eksik, ama Android SDK kütüphaneler 32-bit sürümlerini ihtiyacı olduğunu. Başlık dosyaları önceden oluşturulmuş yazılımı çalıştırmak için değil, yalnızca kitaplığa dayanan yazılım oluşturmak için gereklidir .
Eliah Kagan,

Yanıtlar:


47

Bu sorun, Android SDK'nin 32-bit GNU / Linux sistemi için derlenmesi ve Ubuntu sisteminizin 64-bit GNU / Linux sistemi olması nedeniyle ortaya çıkıyor. Çözüm kolay olmalı (Ubuntu 64-bit işletim sisteminde 32 bit programları çalıştırmayı tam olarak desteklediğinden) - ihtiyaç duyduğu kütüphanelerin 32 bit sürümlerini kurmanız yeterli.

Bunu yapmanın en basit ve en kolay yolu, ia32-libsİa32-lib'leri yükleyin paketini yükleyerek en sık kullanılan kütüphanelerin 32-bit versiyonlarını kurmaktır . Bunu Yazılım Merkezinde veya Terminalde aşağıdakilerle yapabilirsiniz:

sudo apt-get update
sudo apt-get install ia32-libs

Başlangıçta ia32-libs, Ubuntu'nun varsayılan yapılandırmasında 64 bit sisteme 32 bit Ubuntu paketlerinin yüklenmesini desteklemediği için sağlandı. Bu, varsayılan olarak tam olarak desteklendiğine göre, ia32-libspaket yalnızca 64 bit sisteminize, 32 bit sisteme yüklenecek aynı 32 bit paketlerin yüklenmesine neden olur. (Öyleyse endişelenen herkes için bu multarch, varsayılan olarak desteklenen şu anda çalışmayabilir : hala çalışıyor.)

Kaynak: Ubuntu 11.04'te Android / Eclipse Kurulumu - aapt ve adb düzgün çalışmıyor.
Ayrıca bakınız: Eclipse Android Eklentisi - libncurses.so.5


11
Bu artık Ubuntu 13.10 için bir çözüm olarak görünmüyor.
Sahas Katta

10
@SahasKatta bu işe yarıyor askubuntu.com/a/165536/1599
phunehehe

Konsol çekiminden önce @SahasKatta yorumunu oku.
danihp

3
Ubuntu 13.10+ ia32-lib'leri lib32z1, lib32ncurses5 ve lib32bz2-1.0 (ia32-lib'leri yüklemeye çalışırken sağlanan mesajlaşma) ile değiştirildi. lib32stdc ++ 6 bu listeye dahil değildir, ancak gereklidir.
RBI,

3
Bu cevap beni neyin işe yaradığını gösterdi: "sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0"
cjstehno

55

Debian Jessie (veya Ubuntu 13.10+) kullanıyorsanız, deneyin.

sudo apt-get install lib32stdc++6



Sadece benim için aynı sorunu Linux Mint 16 RC'de çözdüm.
Trevor

3
benim için yepyeni Ubuntu 14.04'te çalıştı. çok teşekkürler!
talha06

36

Bu konu benim için düzeldi.

Özellikle, bu paketi yükleme:

sudo apt-get install lib32z1 lib32z1-dev

1
Cevapların hiçbiri, bunun dışında, benim için çalıştı. Thanks :)
codeMan

Bu cevap için çok fazla cevap alıyorum ... teşekkürler ... bir şekilde kullanıcı 'Squeezle' cevabımı değiştirdi, bu yüzden yukarıdaki olan benim orijinal yazım değil. -1, yanıtımın kim tarafından değiştirilmesine izin verdiğim için siteye
ether_joe

Ubuntu 14.04 64bit'te benim için çalışan sadece biri. Teşekkür ederim!
TJ Biddle

Debian 8.1.0'da mükemmel çalışır. Zaten lib32stdc ++ 6 kullanıyordum, bu yüzden sorunun olmadığını biliyordum. Tekrar teşekkürler!
woahguy 6:15

16

Bunun üzerine Ubuntu 14.04 64-bit ile karşılaştım. Benim çözümüm:

sudo apt-get install -y libc6:i386 libgcc1:i386 libstdc++6:i386 libz1:i386

Aapt aracı için gerekli paylaşılan kütüphanelere göre:

$ readelf -d android-sdk-linux/build-tools/20.0.0/aapt | grep -i shared
 0x00000001 (NEEDED)                     Shared library: [librt.so.1]
 0x00000001 (NEEDED)                     Shared library: [libdl.so.2]
 0x00000001 (NEEDED)                     Shared library: [libpthread.so.0]
 0x00000001 (NEEDED)                     Shared library: [libz.so.1]
 0x00000001 (NEEDED)                     Shared library: [libstdc++.so.6]
 0x00000001 (NEEDED)                     Shared library: [libm.so.6]
 0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]

3
Teşekkürler. Bu benim için çalıştı (Ubuntu 14.04 x64). Diğerleri yapmaz.
Juanin

7

Bu benim için çalışıyor: aptitude install lib32stdc++6


Bu aynı zamanda benim için bir ton R ile ilgili hataları ortadan kaldırdı.
Akiva,

2
sudo apt-get install lib32z1

Bu benim için çalıştı.

Sinaptik'e git -> lib32z1 için ara -> çalışma zamanını ve geliştirmeyi seçin Uygula ve yap.



2

Ubuntu 15.04 için aşağıdakiler gerekliydi:

sudo apt-get install lib32stdc++6 lib32z1
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.