Adb Android non trovato


103

Quando eseguo la mia app Android da eclipse, ottengo questo errore.

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

COPIA INCOLLA DA Eclipse Errore

[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'

Tuttavia il mio adb è esattamente nella posizione in cui dice che non lo è.

Cosa c'è che non va e come lo risolvo?

Ho cd nella directory dove adb è ( /home/antz/Development/adt-bundle-linux/sdk/platform-tools/) e ho digitato adb e dice

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 è verde, il che significa che è un eseguibile, corretto?

ad esempio, anche dx è verde e quando ho digitato dx nel prompt dei comandi, funziona ... cosa c'è di sbagliato in adb?


Sei sicuro che lo sia platform-tooldse no platform-tools?
Raghav Sood

/ home / antz / Development / adt-bundle-linux / sdk / platform-toolds / adb C'È una "d" non necessaria!
petey

scusa è un errore di battitura da parte mia su questo post
ealeon

hai controllato i permessi del file / cartella? Stai lavorando su Linux, assicurati che il tuo utente possa effettivamente accedere a quella cartella ed eseguire adb
WarrenFaith

Risposte:


143

Su Linux, il platform-toolspacchetto Android SDK contenente adbera 32bit. Ha funzionato bene sui 32bitsistemi. Ma sui 64bitsistemi è necessario installare manualmente la libreria IA32.

Per le distribuzioni basate su Debian, prova questo:

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

Ma poiché la v24.0 platform-toolscontiene solo 64bitbinari, le 32bitlibrerie non sono più necessarie.


grazie questo ha fatto funzionare. perché non hanno incluso questo passaggio nel tutorial?
ealeon

4
Google ha fornito le informazioni. Vedere developer.android.com/sdk/installing/index.html Fare clic su Informazioni per altre piattaforme e quindi risolvere i problemi di ubuntu.
Robin Chander

5
@RobinChander, divertente che il bundle ADT di Linux a 64 bit viene fornito con un adb a 32 bit sotto adt-bundle-linux/sdk/platform-tools/adb... Questo è anche un problema con altre distribuzioni, ad esempio Fedora 17.
maxschlepzig

5
Non riesco a installare le librerie IA32! Perché?
gtr123

1
Ho ricevuto lo stesso errore e poi ho fatto apt-get install ia32-libs ma ora come faccio a riavviare la configurazione degli strumenti ADT in eclipse? Sto eseguendo Ubuntu 12.04
CodeKingPlusPlus

112

Non è più possibile installare ia32-libs, quindi è necessario disporre delle singole librerie a 32 bit richieste da adb

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

E per Ubuntu 13.10:

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

Si riferisce a una versione specifica di Linux? Se è così, potresti metterlo nella tua risposta.
CatShoes

Nota: se l'installazione fallisce (cattive dipendenze) prova a installarla lancia il file aptitude. Ti suggerirebbe di eseguire il downgrade di alcune librerie in modo che l'installazione abbia successo.
Ben Usman

4
Avevo anche bisogno di installare lib32z1 (Ubuntu 13.10)
AntonS

E: Il pacchetto 'lib32stdc ++ 6' non ha un candidato all'installazione E: Il pacchetto 'lib32gcc1' non ha un candidato all'installazione E: Impossibile individuare il pacchetto lib32ncurses5
idraulico

Sì, grazie mille :) Funziona alla grande su Ubuntu 13.10
Aukhan

30

Devi installare glibc a 32 bit:

nella macchina Fedore a 64 bit

# yum install glibc.i686

Questo rimuove il messaggio fuorviante "nessun file o directory di questo tipo" quando si tenta di eseguire un binario a 32 bit. Con ciò il sistema Fedora a 64 bit è in grado di eseguire binari a 64 bit.

Questo rimuove anche il messaggio fuorviante "non un eseguibile dinamico" di ldd quando si chiama ldd su un eseguibile dinamico a 32 bit.

Ora devi installare le librerie a 32 bit mancanti, i binari in adt-bundle-linux / sdk / platform-tools sono collegati contro:

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

Questo è tutto.


3
È bello vedere una soluzione per gli utenti Fedora!
Kyle

24

Sto usando Ubuntu 14.04 LTS a 64 bit e il seguente codice funziona per me ;

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


Sommario:

Dopo aver provato apt-get install ia32-libs , ma apt package tool lo suggerisce;

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

Quindi il codice sopra funziona per me.


Ho provato la tua soluzione ma il problema si verifica ancora con me.
tvshajeer

1
Ha lavorato per Ubuntu 16
Abduhafiz

9

Funziona alla grande nella versione Ubuntu 13.04 a 64 bit

Non è più possibile installare ia32-libs, quindi è necessario disporre delle singole librerie a 32 bit richieste da adb

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

Provato. Funziona alla grande su 13.04 64bit. Grazie mille: D
Blaze Tama

Sulla mia macchina Ubuntu 14.04 a 64 bit, è stata installata automaticamente anche una dipendenza lib32tinfo5.
faizal

8

Su Arch linux:

Abilita i repository "multiarch" in /etc/pacman.conf

quindi esegui:

root@box#pacman -Syu

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

Questo ha funzionato per me. multilibTuttavia è il repository da abilitare.
paldepind

4

Sto eseguendo Ubuntu 12.04 LTS e questo comando è l'unica cosa che ha funzionato per me:

sudo apt-get install lib32z1 lib32z1-dev

Una volta eseguito da una riga di comando, sono stato in grado di ottenere il file R.java da generare (il segno rivelatore che qualcosa nell'installazione degli strumenti di Android SDK non è del tutto corretto) facendo un Progetto> Pulisci in Eclipse.


3

Per multiarch Debian 7.0, aggiungi:

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

2
Questo sembra non avere nulla a che fare con la domanda.
Screen Name esoterico

Funziona. Ma è sufficiente con i pacchetti libc6: i386 e libstdc ++ 6: i386
Jorge Sainz


2

È necessario installare il pacchetto ia32-libs (librerie IA32) affinché funzioni.




2

Dal HOWTO Ubuntu Multiarch :

Alcuni utenti che utilizzano Android SDK potrebbero riscontrare problemi durante il tentativo di eseguire strumenti di build o strumenti di piattaforma su piattaforma amd64 bit. In sostituzione di ia32-libs, gli utenti dovrebbero andare bene semplicemente installando le seguenti librerie:

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

1

Installa queste librerie in linux apt-get install ia32-libs


1

Esegui questi comandi di seguito. Ha funzionato per me

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

1

in Ubuntu 64 bit [12.04] - [14.10] e OS elementare 64 bit

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

1

A volte è solo questione di dare ai file sdk le autorizzazioni necessarie.

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

Riavvia Android Studio e verifica se questo lo risolve.

I problemi di autorizzazione si verificano in genere quando si copiano / spostano file SDK da una partizione NTFS o si copiano da un altro computer.


1

sudo apt install adb

adb non installato nel tuo pc

Prova questo.


0

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

il blog spiega la risoluzione per Ubuntu 13.10 per l'installazione di Chrome, Java e Fixing Android SDK.


I collegamenti a risorse esterne sono incoraggiati, ma aggiungi un contesto attorno al collegamento in modo che gli altri utenti abbiano un'idea di cosa sia e perché si trovi. Cita sempre la parte più rilevante di un collegamento importante, nel caso in cui il sito di destinazione non sia raggiungibile o rimanga permanentemente offline. Solo per il futuro, la risposta è già data. Vedi questo meta articolo.
Johannes Stadler

0

La combinazione corrente corretta per Arch Linux è la seguente::

[Questa parte è invariata] Rimuovere il commento dalla sezione seguente in /etc/pacman.conf:

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

Poi:

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

La differenza con l'altra risposta è che i nomi dei pacchetti includono ora multilib / part.

(da Arch Wiki: Multilib # Abilitazione , Android # Risoluzione dei problemi )

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.