更新
在做了一些实验之后,我必须完全重新构思我的问题,因为我被我的终端所欺骗.当我发出sudo ./adb时,它没有显示错误消息.
如果我进入ANDOID_SDK / platform-tools目录并运行./adb,我得到:
command not found: ./adb
这里输出ls -l adb在同一目录中:
-rwxrwxr-x 1 myuser myuser 159620 2011-12-20 19:30 adb
运行哪个adb给了我:
./adb
对于该目录中的所有其他二进制可执行文件,例如aapt,aidl,dexdump等,也会发生同样的情况.
我可以想象这与我尝试在64位Ubuntu上运行它有关,但ELF标题或类似的东西无法被识别.但是,ANDOID_SDK / tools中的android工具运行正常(除了在下载新包后未能执行adb).
真奇怪……
原始问题
我下载了最新的Android SDK.如果我尝试以普通用户身份运行adb,我会收到“未找到命令”.我必须将其作为“sudo ./adb”运行,并且它有效.为什么这样,我该如何解决?我正在运行Ubuntu 64 11.10.
我在较旧的Ubuntu版本上使用了SDK,我可以像普通用户一样运行它而不会出现问题.有任何想法吗?
解决方法
我找到了解决方案.如果我真的安装了ia32-libs,我再次调查.乍一看,它在天资方面看起来很好.但是,第二眼我注意到安装了ia32-libs软件包,但并非所有依赖项.我无法用aptitude解决这个问题,但我不得不用KDE包管理器删除ia32-libs并重新安装它.现在,所有缺少的88个依赖项也被安装了. adb现在工作正常.
我不是百分之百确定为什么aptitude在这里失败了,但是我怀疑它在我的安装上也遇到了这个错误:https://bugs.launchpad.net/ubuntu/+source/aptitude/+bug/831768我在aptitude中也有重复的条目用于所有条目.