未能链接/system/bin/sh CANNOT link EXECUTABLE



我一直在使用Eclipse中的Android开发工具为我的雇主制作一个概念验证应用程序,向他们展示我们公司可以用应用程序做什么。我有很长的使用IDE和不使用IDE编程的历史;我已经使用Eclipse编写了几个内部Java工具。然而,我从来没有在Eclipse或ADT的掩护下乱搞过。

今天早上,我正在努力研究这个项目,我在res/values/strings.xml中更改了一个简单的字符串。我甚至没有更改字符串的长度,只是将两个字符从"35"更改为"50"。当我点击Run查看更改时,我在控制台输出中得到了一条神秘的消息:

[2012-02-21 13:56:58 - CableCalc2] ------------------------------
[2012-02-21 13:56:58 - CableCalc2] Android Launch!
[2012-02-21 13:56:58 - CableCalc2] adb is running normally.
[2012-02-21 13:56:58 - CableCalc2] Performing com.rletech.cablecalc2.CableCalc2 activity launch
[2012-02-21 13:56:58 - CableCalc2] Automatic Target Mode: Preferred AVD 'first_avd' is available on emulator 'emulator-5554'
[2012-02-21 13:56:58 - CableCalc2] WARNING: Unknown device API version!
[2012-02-21 13:56:58 - CableCalc2] Uploading CableCalc2.apk onto device 'emulator-5554'
[2012-02-21 13:57:01 - CableCalc2] Installing CableCalc2.apk...
[2012-02-21 13:57:01 - CableCalc2] Success!
[2012-02-21 13:57:01 - CableCalc2] Starting activity com.rletech.cablecalc2.CableCalc2 on device emulator-5554
[2012-02-21 13:57:01 - CableCalc2] ActivityManager: link_image[1995]: failed to link /system/bin/sh
[2012-02-21 13:57:01 - CableCalc2] ActivityManager: CANNOT LINK EXECUTABLE
[2012-02-21 13:57:01 - CableCalc2] ActivityManager: 

我被困在那里了。我尝试了一些我知道应该有效的其他项目,因为它们以前也有效过,包括经典的HelloAndroid项目。所有的项目都给了我同样的失败。

我没有更改代码中的任何内容。这就像ADT或Eclipse为我更改了一些东西,却忘记告诉我。有什么线索可以告诉我如何修复它吗?

系统详细信息:Eclipse Indigo SR1构建ID 20110916-0149。已在一段时间前下载。安卓开发工具包版本16.0.1.v201112150204-238534。2012年2月6日下载。ADB版本为1.0.29模拟器平台2.2(API 8级)

发布前更新:我还有一个4.0.3平台(API 15级),当我将运行配置更改为4.0.3时,一切仍然有效。这很好,但我们的客户不会每个月都用完并购买新的Android,所以我们需要在API 8级上运行并测试它。正如我所说,它停止了API第8级的工作,这是非常突然的,并不是出于可预测的原因。

作为概念的证明,这看起来并不太好。再说一遍,我该如何修复它?

--当做射线

这里的聚会太晚了,但我发现当/system/bin/linker从你的Android设备中删除时,你可能会收到这个错误。(在我的情况下,我试图在运行时更新linker)。缺少的linker似乎会在每个可执行文件上引发此错误,而不仅仅是sh。在我的情况下,我能够用adb push恢复/system/bin/linker,但设备仍然存在问题,最终,完全重新刷新操作系统是我发现唯一有效的解决方案。

相关内容

最新更新