问题描述
通过官网下载 64 位系统下的包 “adt-bundle-linux-x86_64-20140702.zip”,解压后,执行 adb 出现如下错误,如下所示:
thomaspc@thomaspc:~/bins/androidsdk/sdk/platform-tools$ sudo ./adb
sudo: unable to execute ./adb: No such file or directory
问题分析
1. 出乎意料,google 提供的 64 位包,里面竟然包含的是 32 位的可执行程序,通过如下方法验证:
thomaspc@thomaspc:~/bins/androidsdk/sdk/platform-tools$ file adb
adb: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, not stripped
thomaspc@thomaspc:~/bins/androidsdk/sdk/platform-tools$
2. 无法执行,是由于64位系统上,没有提供32位程序执行所需的库,查看 adb 所需库文件,可执行如下命令:
thomaspc@thomaspc:~/bins/androidsdk/sdk/platform-tools$ sudo objdum