未findAndroid adb
当我从eclipse运行我的android应用程序时,出现这个错误。
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错误复制粘贴
[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'
但是,我的adb正好在它所说的不在的位置。
什么是错的,如何解决这个问题?
我进入adb目录( /home/antz/Development/adt-bundle-linux/sdk/platform-tools/
),然后在adb中input
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是绿色的,这意味着它的可执行文件是正确的?
例如,dx也是绿色的,当我在dx中键入命令提示符时,它工作… adb怎么了?
在Linux上,包含adb
Android SDK platform-tools
包曾经是32bit
。 它在32bit
系统上运行良好。 但在64bit
系统上,您需要手动安装IA32库。
对于基于Debian的发行版,试试这个:
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
但是由于v24.0 platform-tools
仅包含64bit
二进制文件,因此不再需要32bit
库。
您不能再安装ia32-libs,所以您必须使用adb所需的个别32位库
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
而对于Ubuntu 13.10:
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1
你必须安装32位的glibc:
在Fedore 64位机器上
# yum install glibc.i686
当试图执行一个32位的二进制文件时,这将消除误导性的“没有这样的文件或目录”消息。 由于64位的Fedora系统能够执行64位二进制文件。
当在32位dynamic可执行文件上调用ldd时,这也消除了ldd误导性的“不是dynamic可执行”消息。
现在,您必须安装丢失的32位库,adt-bundle-linux / sdk / platform-tools下的二进制文件将链接到:
# yum install zlib.i686 libstdc++.i686 ncurses-libs.i686 libgcc.i686
而已。
我使用Ubuntu 14.04 LTS 64位 ,下面的代码适用于我 ;
sudo apt-get install lib32z1 lib32z1-dev sudo apt-get install lib32stdc++6
概要:
我试过apt-get install ia32-libs ,但是apt封装工具提示说;
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
然后上面的代码为我工作。
这在Ubuntu 13.04 64bit版本中效果很好
您不能再安装ia32-libs,所以您必须使用adb所需的个别32位库
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
在Arch linux上:
启用/etc/pacman.conf中的“multiarch”存储库
然后运行:
root@box#pacman -Syu root@box#pacman -S lib32-glibc lib32-zlib lib32-libstdc++5 lib32-ncurses lib32-gcc-libs
我运行的是Ubuntu 12.04 LTS,这个命令是唯一对我有用的东西:
sudo apt-get install lib32z1 lib32z1-dev
一旦我从命令行运行它,通过在Eclipse中执行“项目”>“清理”,我可以获得R.java文件(在Android SDK工具安装中的某些内容不完全正确)。
对于多元Debian 7.0,添加:
dpkg --add-architecture i386 apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
在Fedora 17或18上:
sudo yum install redhat-lsb.i686
您需要安装ia32-libs(IA32库)包才能正常工作。
我在Linux Mint 12中做到了这一点:
chmod +x PATH/adb
如果你在64位有这个问题,试试这个(为我工作):
$ 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
从Ubuntu Multiarch HOWTO :
当试图在amd64位平台上运行构build工具或平台工具时,一些使用Android SDK的用户可能会遇到问题。 作为ia32-libs的替代品,用户应该可以安装下列库:
dpkg --add-architecture i386 aptitude update aptitude install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386
sudo apt安装adb
adb未安装在您的电脑
尝试这个。
在Linux下安装这些库apt-get install ia32-libs
运行下面的这些命令。 它为我工作
sudo apt-get dist-upgrade sudo apt-get install ia32-libs
在Ubuntu 64位[12.04] – [14.10]和基本操作系统64位
sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386
有时这只是一个给sdk文件必要的权限的问题。
sudo chmod -R +x /path/to/android-sdk-linux
重新启动Android Studio,看看是否解决这个问题。
当您从NTFS分区复制/移动sdk文件或从另一台计算机复制时,通常会发生权限问题。
http://abhinavasblog.blogspot.sg/2013/10/working-with-ubuntu-1304-and-1310-java.html
博客向Ubuntu 13.10解释安装Chrome,Java和Fixing Android SDK的解决scheme。
Arch Linux的正确组合如下:
[这一部分不变]取消/etc/pacman.conf
的以下部分的/etc/pacman.conf
:
... [multilib] Include = /etc/pacman.d/mirrorlist ...
然后:
sudo pacman -Syu && sudo pacman -S multilib/lib32-libstdc++5 multilib/lib32-zlib
与其他答案的区别在于软件包名称现在包含multilib / part。
(来自Arch Wiki: Multilib#Enabling , Android#Troubleshooting )