Android NDK调试出错Unknown Application ABI, Unable to detect application ABI's

Mario_Q 2014-08-08 12:10:26
操作系统:win7 64bit
IDE : Eclipse Android developer tools
android NDK: r9
android SDK : android4.4
我的调试手机是: android 4.0的

application.mk

APP_OPTIM := debug
APP_ABI := armeabi-v7a
APP_STL := gnustl_static

NDK_DEBUG = 1

APP_PLATFORM := android-14

NDK_TOOLCHAIN_VERSION := 4.8
APP_STL := gnustl_static
APP_CPPFLAGS += -fsigned-char -fexceptions -fno-permissive -frtti -Wno-psabi -std=c++11 -Wwrite-strings -Wno-enum-compare -Wno-format-security -Wno-literal-suffix -Wno-format -Wno-conversion-null





C++ build 的配置
Build Command: D:\devtool\android-ndk-r9\ndk-build.cmd NDK_DEBUG=1

AndroidManifest.xml 中
<uses-sdk
android:minSdkVersion="14" 这里改成其它的18 19等也没用
android:targetSdkVersion="14" />
<application
android:debuggable="true"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:hardwareAccelerated="false">

编译信息:

**** Build of configuration Default for project GuideCrutch ****

D:\devtool\android-ndk-r9\ndk-build.cmd NDK_DEBUG=1 NDK_MODULE_PATH=E:/ue/GuideCrutch/terminal/GuideCrutch/libs/armeabi-v7a V=1
Android NDK: WARNING:jni/Android.mk:Aisound: non-system libraries in linker flags: -laisound5
Android NDK: This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES
Android NDK: or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the
Android NDK: current module
del /f/q .\libs\armeabi-v7a\libAisound.so .\libs\armeabi-v7a\libGuideCrutch.so .\libs\armeabi-v7a\libgc.so >NUL 2>NUL
del /f/q .\libs\armeabi-v7a\gdbserver >NUL 2>NUL
del /f/q .\libs\armeabi-v7a\gdb.setup >NUL 2>NUL
Gdbserver : [arm-linux-androideabi-4.8] libs/armeabi-v7a/gdbserver
copy /b/y "D:\devtool\android-ndk-r9\prebuilt\android-arm\gdbserver\gdbserver" ".\libs\armeabi-v7a\gdbserver" > NUL
Gdbsetup : libs/armeabi-v7a/gdb.setup
D:/devtool/android-ndk-r9/prebuilt/windows-x86_64/bin/echo.exe "set solib-search-path ./obj/local/armeabi-v7a" > ./libs/armeabi-v7a/gdb.setup
D:/devtool/android-ndk-r9/prebuilt/windows-x86_64/bin/echo.exe "directory D:/devtool/android-ndk-r9/platforms/android-14/arch-arm/usr/include jni D:/devtool/android-ndk-r9/sources/cxx-stl/gnu-libstdc++/4.8/include D:/devtool/android-ndk-r9/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi-v7a/include D:/devtool/android-ndk-r9/sources/cxx-stl/gnu-libstdc++/4.8/include/backward" >> ./libs/armeabi-v7a/gdb.setup
Install : libAisound.so => libs/armeabi-v7a/libAisound.so
copy /b/y ".\obj\local\armeabi-v7a\libAisound.so" ".\libs\armeabi-v7a\libAisound.so" > NUL
D:/devtool/android-ndk-r9/toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64/bin/arm-linux-androideabi-strip --strip-unneeded ./libs/armeabi-v7a/libAisound.so
Install : libGuideCrutch.so => libs/armeabi-v7a/libGuideCrutch.so
copy /b/y ".\obj\local\armeabi-v7a\libGuideCrutch.so" ".\libs\armeabi-v7a\libGuideCrutch.so" > NUL
D:/devtool/android-ndk-r9/toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64/bin/arm-linux-androideabi-strip --strip-unneeded ./libs/armeabi-v7a/libGuideCrutch.so
Install : libgc.so => libs/armeabi-v7a/libgc.so
copy /b/y ".\obj\local\armeabi-v7a\libgc.so" ".\libs\armeabi-v7a\libgc.so" > NUL
D:/devtool/android-ndk-r9/toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64/bin/arm-linux-androideabi-strip --strip-unneeded ./libs/armeabi-v7a/libgc.so

**** Build Finished ****

编译是可以通过的。正常的。
问题是在Debug As Android Native Application的时候出错。
直接Debug 和 运行都没有问题的。但是我想调试的C++的本地代码中去。
网上找过的方法:
http://stackoverflow.com/questions/20047348/unknown-application-abi-while-debug-as-native-application
http://stackoverflow.com/questions/18245867/getting-unknown-application-abi-when-trying-to-debug-some-c-code-in-my-android
wiseideal.iteye.com/blog/1963921
对我这个没用。有些也写的不清楚。
有其它的方法调试NDK的也可以~。
...全文
2473 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
星空下的猫 2016-01-11
  • 打赏
  • 举报
回复
我也遇到这个问题,不过有个提示就是:warning:android-19 is larger tharn android:minSdkVersion on 8 in ./AndroidManifest.xml,刚开始我以为警告不以为意,不过后来把APP_PLATFORM:=android-19改为android-8,通过ndk-build DUMP_APP_ABI命令返回armeabi-v7a,设置APP_ABI和APP_OPTIM:=debug,然后就可以debug了,感觉cdt要debug好困难,期间在window试过各种方法都不行,都崩溃了,各种问题,后来跑到linux环境下,用个测试代码debug,官方给的方式出现很多问题,还有一种方法,可以搜索linux ndk调试,有另一种方法,那个网址blog.csdn.net/gavinr/article/details/7343324,使用同样的方法在window下利用cygwin调试不行,也出现很多问题,因为没有时间,等有时间打算把各个方法总结一下,看看能不能在window下实现debug,如果各位有什么好的借鉴网址请分享一下或私信给我,我想等有时间都尝试一下,因为也是新手的关系,跟这个扛上了,一个星期的心酸。
罗旭云 2015-11-26
  • 打赏
  • 举报
回复
不要用cocos2dx 3.0以上的版本。在eclipse下回坑死你。我研究了两周多,才研究透,cocos2dx-2.2.6版本如何调试C++。 有任务问题联系QQ:313179341
罗旭云 2015-11-26
  • 打赏
  • 举报
回复
Application.mk文件末尾增加 NDK_MODULE_PATH := E:/cocos2d-x-2.2.6;E:/cocos2d-x-2.2.6/cocos2dx/platform/third_party/android/prebuilt
promotergmy 2015-11-19
  • 打赏
  • 举报
回复
楼主好了没? QQ:704366797
酷迪琪琪 2015-11-10
  • 打赏
  • 举报
回复
请问楼主问题解决了么? 本人遇到相同问题,还请指教一二,QQ : 503200435
pm_wq 2015-08-13
  • 打赏
  • 举报
回复
请问这个问题解决了吗
gucunlin 2015-06-24
  • 打赏
  • 举报
回复
这问题,困扰我一个多月了,网上的方法找好多没用。试了两个eclipse和android studio 最后一个还正在尝试。
Mario_Q 2014-08-08
  • 打赏
  • 举报
回复
我用Sequoyah的方式也会出错: http://wiki.eclipse.org/Sequoyah/ndk_guide auto-solib-add on Undefined command: "auto-solib-add". Try "help". localhost:5039: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
Mario_Q 2014-08-08
  • 打赏
  • 举报
回复
不行。 APP_ABI :=armeabi 这个只是指定编译出来库的位置。
雨焰 2014-08-08
  • 打赏
  • 举报
回复
你试试 APP_ABI :=armeabi 或者在你的Android.mk文件中添加 TARGET_ARCH_ABI := armeabi

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧