Wenn ich meine Android-App über Eclipse starte, erhalte ich diesen Fehler.
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
COPY PASTE VOM Eclipse-Fehler
[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'
Mein Adb ist jedoch genau an dem Ort, an dem es nicht angezeigt wird.
Was ist falsch und wie kann ich das beheben?
Ich cd in das Verzeichnis wo Adb ist (/home/antz/Development/adt-bundle-linux/sdk/platform-tools/
) und ich habe Adb eingegeben und es sagt
[email protected]:~/Development/adt-bundle-linux/sdk/platform-tools$ ls
aapt aidl dexdump fastboot llvm-rs-cc renderscript
adb api dx lib NOTICE.txt source.properties
[email protected]:~/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 ist grün was bedeutet, dass es ausführbar ist, richtig?
zum Beispiel ist dx auch grün und wenn ich dx in den Befehl Prompt eingebe, funktioniert es ... was ist los mit adb?
Unter Linux war das platform-tools
-Paket des Android SDK adb
und 32bit
. Es hat gut auf 32bit
Systemen funktioniert. Auf 64bit
-Systemen müssen Sie die IA32-Bibliothek jedoch manuell installieren.
Für Debian-basierte Distributionen versuchen Sie Folgendes:
Sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
Da v24.0 jedoch platform-tools
nur 64bit
-Binärdateien enthält, werden 32bit
-Bibliotheken nicht mehr benötigt.
Sie können ia32-libs nicht mehr installieren, daher müssen Sie die einzelnen 32-Bit-Bibliotheken verwenden, die von adb benötigt werden
Sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
Und für Ubuntu 13.10:
Sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1
Sie müssen die 32-Bit-Version von glibc installieren:
in Fedore 64-Bit-Maschine
# yum install glibc.i686
Dadurch wird die irreführende Meldung "Keine solche Datei oder Verzeichnis" beim Versuch, eine 32-Bit-Binärdatei auszuführen, entfernt. Damit kann das 64-Bit-Fedora-System 64-Bit-Binärdateien ausführen.
Dadurch wird auch die irreführende Meldung "keine dynamische ausführbare Datei" von ldd entfernt, wenn ldd für eine dynamische 32-Bit-ausführbare Datei aufgerufen wird.
Nun müssen Sie fehlende 32-Bit-Bibliotheken installieren, für die die Binärdateien unter adt-bundle-linux/sdk/platform-tools verlinkt sind:
# yum install zlib.i686 libstdc++.i686 ncurses-libs.i686 libgcc.i686
Das ist es.
Ich verwende Ubuntu 14.04 LTS 64-Bit und den folgenden Code funktioniert für mich;
Sudo apt-get install lib32z1 lib32z1-dev
Sudo apt-get install lib32stdc++6
Nachdem ich apt-get install ia32-libs ausprobiert habe, schlägt apt package tool das vor;
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
Dann funktioniert der obige Code für mich.
Dies funktioniert gut in der Ubuntu 13.04 64bit-Version
Sie können ia32-libs nicht mehr installieren, daher müssen Sie die einzelnen 32-Bit-Bibliotheken verwenden, die von adb benötigt werden
Sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
Auf Arch Linux:
Aktivieren Sie die "Multiarch" -Repositorys in /etc/pacman.conf
dann renne:
[email protected]#pacman -Syu
[email protected]#pacman -S lib32-glibc lib32-zlib lib32-libstdc++5 lib32-ncurses lib32-gcc-libs
Ich verwende Ubuntu 12.04 LTS und dieser Befehl ist das einzige, was für mich funktioniert hat:
Sudo apt-get install lib32z1 lib32z1-dev
Nachdem ich das über eine Befehlszeile ausgeführt hatte, konnte ich die R.Java-Datei generieren (das verräterische Zeichen, dass etwas in Ihrer Android SDK-Tools-Installation nicht ganz richtig ist), indem Sie ein Projekt> In Eclipse reinigen ausführen.
Für Multiarch Debian 7.0 fügen Sie hinzu:
dpkg --add-architecture i386
apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
Auf Fedora 17 oder 18:
Sudo yum install redhat-lsb.i686
Aus dem Ubuntu Multiarch HOWTO :
Bei einigen Benutzern, die das Android SDK verwenden, treten möglicherweise Probleme auf, wenn Build-Tools oder Plattform-Tools auf der AMD64-Bit-Plattform ausgeführt werden. Als Ersatz für ia32-libs sollten Benutzer lediglich die folgenden Bibliotheken installieren:
dpkg --add-architecture i386
aptitude update
aptitude install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386
Ich habe es in meiner Linux Mint 12 gemacht:
chmod +x PATH/adb
wenn Sie dieses Problem in 64 Bit haben, versuchen Sie Folgendes (für mich gearbeitet):
$ apt-get install lib32gcc1 libc6-i386 lib32z1 lib32stdc++6
$ apt-get install lib32ncurses5 lib32gomp1 lib32z1-dev lib32bz2-dev
$ apt-get install g++-multilib
http://sixarm.com/about/ubuntu-apt-get-install-ia32-for-32-bit-on-64-bit.html
Damit dies funktioniert, müssen Sie das Paket ia32-libs (IA32-Bibliotheken) installieren.
in Ubuntu 64 Bit [12.04] - [14.10] und Elementary OS 64 Bit
Sudo dpkg --add-architecture i386
Sudo apt-get update
Sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386
Führen Sie die folgenden Befehle aus. Es hat für mich gearbeitet
Sudo apt-get dist-upgrade
Sudo apt-get install ia32-libs
Sudo apt installieren Adb
aDB nicht in Ihrem PC installiert
Versuche dies.
Manchmal ist es nur eine Frage, bei der sdk-Dateien die erforderlichen Berechtigungen erhalten.
Sudo chmod -R +x /path/to/Android-sdk-linux
Starten Sie Android Studio neu und sehen Sie, ob das Problem behoben ist.
Berechtigungsprobleme treten normalerweise auf, wenn Sie SDK-Dateien von einer NTFS-Partition kopieren oder verschieben oder von einem anderen Computer kopieren.
Installieren Sie diese Bibliotheken in Linux apt-get install ia32-libs
http://abhinavasblog.blogspot.sg/2013/10/arbeits-mit-ubuntu-1304-and-1310-Java.html
im Blog wird die Auflösung von Ubuntu 13.10 für die Installation von Chrome, Java und die Korrektur von Android SDK erläutert.
Die korrekte current -Kombination für Arch Linux lautet wie folgt:
[Dieser Teil ist unverändert] Kommentieren Sie den folgenden Abschnitt in /etc/pacman.conf
:
...
[multilib]
Include = /etc/pacman.d/mirrorlist
...
Dann:
Sudo pacman -Syu && Sudo pacman -S multilib/lib32-libstdc++5 multilib/lib32-zlib
Der Unterschied zur anderen Antwort besteht darin, dass die Paketnamen jetzt den Teil multilib/ enthalten.
(aus Arch Wiki: Multilib # aktivieren , Android # Fehlerbehebung )