Android adb bulunamadı


103

Android uygulamamı tutulmadan çalıştırdığımda bu hatayı alıyorum.

Unexpected exception 'Cannot run program "/home/antz/Development/adt-bundle-linux/sdk/platform-tools/adb": error=2 No such file or directory' while attempting to get adb version from /home/antz/Development/adt-bundle-linux/sdk/platform-tools/adb

Eclipse Hatasından KOPYALA YAPIŞTIRMA

[2012-11-26 13:43:08 - adb] Unexpected exception 'Cannot run program "/home/antz/Development/adt-bundle-linux/sdk/platform-tools/adb": error=2, No such file or directory' while attempting to get adb version from '/home/antz/Development/adt-bundle-linux/sdk/platform-tools/adb'

Ancak benim adb'm tam olarak olmadığını söylediği yerde.

Sorun nedir ve bunu nasıl düzeltirim?

Adb'nin ( /home/antz/Development/adt-bundle-linux/sdk/platform-tools/) olduğu dizine cd yazıyorum ve adb yazdım ve diyor ki

antz@antz-90X3A:~/Development/adt-bundle-linux/sdk/platform-tools$ ls  
aapt  aidl  dexdump  fastboot  llvm-rs-cc  renderscript  
adb   api   dx       lib       NOTICE.txt  source.properties  
antz@antz-90X3A:~/Development/adt-bundle-linux/sdk/platform-tools$ adb  
bash: /home/antz/Development/adt-bundle-linux/sdk/platform-tools/adb: No such file or directory

adb yeşildir, bu onun çalıştırılabilir olduğu anlamına gelir, doğru mu?

örneğin, dx de yeşil ve komut istemine dx yazdığımda çalışıyor ... adb ile ilgili sorun nedir?


Öyle olduğundan emin misin, platform-tooldsdeğil platform-toolsmi?
Raghav Sood

/ home / antz / Development / adt-bundle-linux / sdk / platform-toolds / adb Orada gereksiz bir "d" var!
petey

üzgünüm bu
yazımda yazdığım

dosyanın / klasörün izinlerini kontrol ettiniz mi? Linux üzerinde çalışıyorsunuz, kullanıcınızın bu klasöre gerçekten erişebildiğinden ve
adb'yi

Yanıtlar:


143

Linux, Android SDK platform-toolspaketi içeren adbeskiden 32bit. 32bitSistemlerde iyi çalıştı . Ancak 64bitsistemlerde IA32 kitaplığını manuel olarak kurmanız gerekir.

Debian tabanlı dağıtımlar için şunu deneyin:

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

Ancak v24.0'dan beri platform-tools yalnızca 64bitikili dosyalar içerdiğinden, 32bitartık kitaplıklara gerek yoktur.


teşekkürler bu işe yaradı. neden bu adımı öğreticiye dahil etmediler?
ealeon

4
Bilgileri Google sağladı. Developer.android.com/sdk/installing/index.html sayfasına bakın Diğer platformlar için Bilgi'yi tıklayın ve ardından ubuntu sorunlarını giderin.
Robin Chander

5
@RobinChander, Linux 64-bit ADT paketinin 32 Bit adb altında gelmesi komik adt-bundle-linux/sdk/platform-tools/adb... Bu aynı zamanda diğer dağıtımlarda da bir sorundur, örneğin Fedora 17.
maxschlepzig

5
IA32 kitaplarını yükleyemiyorum! Neden?
gtr123

1
Aynı hatayı aldım ve sonra apt-get ia32-libs'i kurdum ama şimdi tutulmada ADT araçlarının yapılandırmasını nasıl yeniden başlatabilirim? Ubuntu 12.04 çalıştırıyorum
CodeKingPlusPlus

112

Artık ia32-lib'leri yükleyemezsiniz, bu nedenle adb tarafından ihtiyaç duyulan ayrı 32 bit kitaplıklara sahip olmanız gerekir

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

Ve Ubuntu 13.10 için:

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

Bu, Linux'un belirli bir sürümüne mi atıfta bulunuyor? Eğer öyleyse, cevabına koyabilir misin?
CatShoes

Not: Kurulum başarısız olursa (kötü bağımlılıklar), yeteneği atmayı deneyin. Kurulumun başarılı olması için bazı kitaplıkları eski sürüme geçirmenizi önerir.
Ben Usman

4
Ayrıca
lib32z1'i

E: 'lib32stdc ++ 6' paketinin kurulum adayı yok E: 'lib32gcc1' paketinin kurulum adayı yok E: lib32ncurses5 paketi bulunamıyor
basamaklı tesisatçı

13.10 ubuntu üzerinde çok :) Workks harika teşekkürler Evet
Aukhan

30

32 bit glibc'yi yüklemeniz gerekir:

Fedore 64 bit makinede

# yum install glibc.i686

Bu, 32 bitlik bir ikiliyi çalıştırmaya çalışırken yanıltıcı 'böyle bir dosya veya dizin yok' mesajını ortadan kaldırır. Bununla birlikte, 64 bitlik Fedora sistemi 64 bit ikili dosyaları çalıştırabilir.

Bu aynı zamanda, 32 bit dinamik çalıştırılabilir dosyada ldd'yi çağırırken ldd'nin yanıltıcı 'dinamik çalıştırılabilir değil' mesajını da ortadan kaldırır.

Şimdi, adt-bundle-linux / sdk / platform-tools altındaki ikili dosyaların bağlantılı olduğu eksik 32 bit kitaplıkları yüklemelisiniz:

# yum install zlib.i686 libstdc++.i686 ncurses-libs.i686 libgcc.i686

Bu kadar.


3
Fedora kullanıcıları için bir çözüm görmek güzel!
Kyle

24

Ben kullanıyorum 14.04 LTS 64 bit Ubuntu ve aşağıdaki kod benim için çalışıyor ;

sudo apt-get install lib32z1 lib32z1-dev
sudo apt-get install lib32stdc++6


Özet:

Apt-get install ia32-libs'i denedikten sonra , ancak apt paket aracı şunu öneriyor;

Package ia32-libs is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source.

However the following packages replace it:
  lib32z1 lib32ncurses5 lib32bz2-1.0

O zaman yukarıdaki kod benim için çalışıyor.


Çözümünüzü denedim ama yine de sorun bende oluyor
tvshajeer

1
Ubuntu 16 için çalıştı
Abduhafiz

9

Bu, Ubuntu 13.04 64bit sürümünde harika çalışıyor

Artık ia32-lib'leri yükleyemezsiniz, bu nedenle adb tarafından ihtiyaç duyulan ayrı 32 bit kitaplıklara sahip olmanız gerekir

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

Test edildi. 13.04 64bit'te harika çalışıyor. Çok teşekkürler: D
Blaze Tama

Ubuntu 14.04 64 bit makinemde lib32tinfo5 bağımlılığı da otomatik olarak kuruldu.
faizal

8

Arch linux üzerinde:

/Etc/pacman.conf içindeki "multiarch" havuzlarını etkinleştirin

o zaman koş:

root@box#pacman -Syu

root@box#pacman -S lib32-glibc lib32-zlib lib32-libstdc++5 lib32-ncurses lib32-gcc-libs

Bu benim için çalıştı. Yine multilibde etkinleştirilmesi gereken depodur.
paldepind

4

Ubuntu 12.04 LTS çalıştırıyorum ve bu komut benim için çalışan tek şey:

sudo apt-get install lib32z1 lib32z1-dev

Bunu bir komut satırından çalıştırdığımda, bir Project> Clean in Eclipse yaparak R.java dosyasını oluşturabildim (Android SDK araçları kurulumunuzdaki bir şeyin tam olarak doğru olmadığını gösteren gösterge).


3

Multiarch Debian 7.0 için şunu ekleyin:

dpkg --add-architecture i386
apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386

2
Bunun soruyla hiçbir ilgisi yok gibi görünüyor.
Ezoterik Ekran Adı

İşe yarıyor. Ancak libc6: i386 ve libstdc ++ 6: i386
Jorge Sainz


2

Bunun çalışması için ia32-libs (IA32 kitaplıkları) paketini kurmanız gerekir.




2

Gönderen Ubuntu Multiarch NASIL :

Android SDK kullanan bazı kullanıcılar, amd64 bit platformunda derleme araçları veya platform araçları çalıştırmaya çalışırken sorunlarla karşılaşabilir. İa32-libs yerine, kullanıcılar aşağıdaki kitaplıkları kurarken sorun çıkarmamalıdır:

dpkg --add-architecture i386
aptitude update
aptitude install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386

1

Bu kitaplıkları linux apt-get install ia32-libs içine kurun


1

Aşağıdaki bu komutları çalıştırın. Benim için çalıştı

sudo apt-get dist-upgrade
sudo apt-get install ia32-libs

1

ubuntu 64 bit [12.04] - [14.10] ve Elementary OS 64 bit'te

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386

1

Bazen bu sadece sdk dosyalarına gerekli izinleri vermek meselesidir.

sudo chmod -R +x /path/to/android-sdk-linux

Android Studio'yu yeniden başlatın ve bunun düzeltilip düzeltilmediğine bakın.

İzin sorunları genellikle sdk dosyalarını bir NTFS bölümünden kopyaladığınızda / taşıdığınızda veya başka bir bilgisayardan kopyaladığınızda ortaya çıkar.


1

sudo apt yükleme adb

adb bilgisayarınızda kurulu değil

Bunu dene.


0

http://abhinavasblog.blogspot.sg/2013/10/working-with-ubuntu-1304-and-1310-java.html

blog, Chrome, Java'yı yüklemek ve Android SDK'yı Düzeltmek için Ubuntu 13.10'a çözünürlük açıklıyor.


Dış kaynaklara bağlantılar tavsiye edilir, ancak lütfen bağlantının etrafına bağlam ekleyin, böylece kullanıcı arkadaşlarınız bunun ne olduğu ve neden orada olduğu konusunda fikir sahibi olur. Hedef sitenin erişilemez olması veya kalıcı olarak çevrimdışı olması durumunda, her zaman önemli bir bağlantının en alakalı bölümünü alıntılayın. Sadece gelecek için, cevap çoktan verildi. Bu meta makaleye bakın.
Johannes Stadler

0

Arch Linux için doğru mevcut combo aşağıdaki gibidir:

[Bu bölüm değişmedi] Aşağıdaki bölümün açıklamasını kaldırın /etc/pacman.conf:

...
[multilib]
Include = /etc/pacman.d/mirrorlist
...

Sonra:

sudo pacman -Syu && sudo pacman -S multilib/lib32-libstdc++5 multilib/lib32-zlib

Diğer cevaptan farkı, paket adlarının multilib / artık parçayı .

(Arch Wiki'den : Multilib # Etkinleştirme , Android # Sorun Giderme )

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.