Nexus 9 arm64-v8a 构建的 NDK 调试不适用于 Eclipse
Posted
技术标签:
【中文标题】Nexus 9 arm64-v8a 构建的 NDK 调试不适用于 Eclipse【英文标题】:NDK Debug for Nexus 9 arm64-v8a build not working for eclipse 【发布时间】:2015-03-23 04:09:07 【问题描述】:我不断收到以下错误:
[2015-01-23 19:27:47 - NativeTestApp] Unable to find a compatible ABI
[2015-01-23 19:27:47 - NativeTestApp] ABI's supported by the application: armeabi
[2015-01-23 19:27:47 - NativeTestApp] ABI's supported by the device: arm64-v8a, null
当我的 Application.mk 为空时。当我有一个 Application.mk 并将 APP_ABI 设置为 arm64-v8a 时,它只显示:
[2015-01-23 19:33:27 - NativeTestApp] Unknown Application ABI:
[2015-01-23 19:33:27 - NativeTestApp] arm64-v8a
[2015-01-23 19:33:27 - NativeTestApp] Unable to detect application ABI's
在我看来,应用程序想要编译 armeabi,但目标是 arm64。当不作为原生调试运行时,它可以正常工作。
【问题讨论】:
另外,只要我设置 APP_PLATFORM := android-19(和我的清单),调试运行该版本的 Nexus 10 平板电脑就可以工作。所以我不认为它是 Eclipse。 【参考方案1】:该问题是 ndk-r10d 和以前版本的固有错误。 ndk-r10e 已解决此问题,尽管它仍然不适用于 eclipse,因为 eclipse 有自己的 ndk 插件。 Google 显然打算让 ndk-gdb 与下一个 Android Studio 版本兼容。
编辑:来源:
https://developer.android.com/ndk/downloads/index.html#rel
“为 64 位 ABI 修复了 ndk-gdb。(问题 118300)”。
【讨论】:
【参考方案2】:Eclipse (23.0.7) 的最新正式版 ADT 插件不支持在配备 64 位 CPU 的设备上进行原生 C/C++ 调试。
我设法更新了源代码,以便在 arm64-v8a (Nexus 9) 上进行 NDK 调试。
试试这个补丁版本:https://github.com/khaledev/ADT
【讨论】:
以上是关于Nexus 9 arm64-v8a 构建的 NDK 调试不适用于 Eclipse的主要内容,如果未能解决你的问题,请参考以下文章
在 arm64-v8a lib 上运行 ndk-stack 失败并出现错误文件格式无法识别
错误记录NDK 配置错误 ( C/C++ debug|arm64-v8a : Could not get version from cmake.dir path )
我可以根据 Android API LEVEL 强制使用 armeabi-v7a 与 arm64-v8a 吗?