无法创建调试桥,无法检测adb版本。语法错误:")"将Platform-tools 23.0.1升级到23.1.0 Linux-32位会导致问题。

7
我将Platform-tools从23.0.1升级到23.1.0,发现一些Android集成出现问题。我正在运行Ubuntu 14.04 32位系统,安装了android-sdk_r24.4.1和android-studio (141.2456560)。执行adb命令时,它始终显示以下消息:
“无法创建调试桥:无法启动adb服务器:无法检测adb版本,adb输出:/home/bhavesh/android-sdk-linux/platform-tools/adb: 1: /home/bhavesh/android-sdk-linux/platform-tools/adb: 语法错误: ')' 不期望”
如有帮助,不胜感激。
谢谢。
3个回答

17

经过一些研究,发现原因是因为

android-sdk-linux/platform-tools中的内容在23.0.1版本中是32位ELF,在23.1_rc1和23.1.0版本中是64位ELF。 因此,android-studio(我认为eclipse + ADT也是如此)中的几个函数因尝试运行64位可执行文件而失败。

此问题已在此处提出

此外,根据谷歌项目成员给出的官方评论从23.1.0开始,平台工具的部分将仅支持64位Ubuntu操作系统。

Platform-tools 23.1.0或更高版本将无法在Ubuntu 32位操作系统上工作。开发者需要升级Ubuntu操作系统到64位以使其正常运行。

这最终意味着我们现在只有两种可能的解决方法:

1. 暂时使用Platform-tool 23.0.1,并且不要升级到23.1.0或更高版本

2. 将Ubuntu操作系统从32位更改为64位。

希望这能对某些人有所帮助。

此链接下载sdk平台工具23.0.1版本


看起来这不仅是Ubuntu的问题,而是大多数Linux内核/发行版的问题。我遇到了同样的问题,这也是我的Backtrack 5 R2的同样问题。 - Akah

8

我已经提交了那个bug 8-) 如果你已经更新到23.1.0(或者安装了一个全新的android-sdk,它会坚持安装最新的platform-tools),你有两种解决方案:

1)从https://dl-ssl.google.com/android/repository/platform-tools_r23.0.1-linux.zip获取platform-tools 23.0.1。进入android-sdk-linux目录,删除“platform-tools”目录(可能不是必要的),然后在那里解压platform-tools_r23.0.1-linux.zip。下次运行SDK更新器时,SDK更新器将正确显示已安装23.0.1版本。

2)我发现尽管qemu-2.0.0无法运行64位的“adb start-server”,但qemu-2.4.0可以!我在上面链接的错误报告中发布了帖子,请参阅我的帖子获取更多信息。长话短说,我构建了qemu-2.4.0源代码包(为Ubuntu Xxxxx Xaros),并安装了一个额外的binfmt文件以启用qemu-x86_64的无缝支持。我运行了“dpkg --add-architecture amd64”和“apt-get install libc6:amd64”以安装基本的64位库。完成,x86-64无缝仿真就准备好了!

这听起来像是进行世界上最慢的SDK安装的配方……但实际上,Java本身在运行eclipse+ADT或Android Studio时使用了绝大部分CPU时间。尽管本机二进制文件对于拥有工作中SDK非常重要,但这些二进制文件的CPU使用量几乎为0(除了手机/平板电脑仿真器本身,无需说它相当耗费CPU资源)。


0

在更新平台工具从23.0.1到23.2.0时,我遇到了这个错误。我通过下载23.0.1版本的平台工具并开始使用来解决问题, 因为32位操作系统版本不支持23.2.0,需要64位操作系统。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接