Android NDKfinddynamic链接:无法debugging库

我有一个项目,编译,加载和运行在Android设备很好。 当我调用gdb服务器时,它也可以正常工作。 然后,当我调用gdb客户端来运行带有断点的消息出现时:

Error while mapping shared library sections: /system/bin/linker: No such file or directory. libandroid.so: No such file or directory. liblog.so: No such file or directory. libEGL.so: No such file or directory. libOpenSLES.so: No such file or directory. libGLESv2.so: No such file or directory. libGLESv2_POWERVR_SGX540_120.so: No such file or directory. ... warning: Unable to find dynamic linker breakpoint function. GDB will be unable to debug shared library initializers and track explicitly loaded dynamic code warning: shared library handler failed to enable breakpoint 

这是我目前的Android.mk文件,对于一些额外的设置可能会丢失:

 LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LS_CPP=$(subst $(1)/,,$(wildcard $(1)/*.cpp)) APP_MODULES := callbacks APP_PLATFORM := android-14 APP_OPTIM:= debug LOCAL_CFLAGS := -DRAPIDXML_NO_EXCEPTIONS LOCAL_CFLAGS += -g LOCAL_CFLAGS += -ggdb LOCAL_CFLAGS += -O1 LOCAL_MODULE:=app3D LOCAL_SRC_FILES := $(call LS_CPP,$(LOCAL_PATH)) LOCAL_LDLIBS := -landroid -llog -lEGL -lOpenSLES -lGLESv2 LOCAL_STATIC_LIBRARIES := android_native_app_glue png LOCAL_STATIC_LIBRARIES += /jni include $(BUILD_SHARED_LIBRARY) $(call import-module,android/native_app_glue) $(call import-module,libpng) 

任何有关这种奇怪错误的原因以及如何摆脱它的build议?

所有的评论和提示深表赞赏和欢迎。

Solutions Collecting From Web of "Android NDKfinddynamic链接:无法debugging库"

使用ndk-gdb而不是标准的gdb 。 从您的项目根目录启动它。 考虑使用--verbose选项,如果你想看看ndk-gdb在做什么。 您还必须将此行添加到您的AndroidManifest.xml

 android:debuggable="true" 

例如,我的看起来像:

 <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" android:debuggable="true" > 

你的application.mk应该定义

 APP_OPTIM := debug 

有了这个,你不必将-g添加到你的编译器标志,ndk-build会自动完成。