我在尝试使用Android NDK调试本机代码时遇到问题。
当应用程序正在运行时,我启动了ndk-gdb
,结果是gdb失去了与设备的连接,并且设备上的应用程序崩溃了。
设备(三星Galaxy 10.1)和模拟器都发生了同样的事情。
主机运行的是Mac OS X.应用程序的本机部分由多个.so库组成,使用ndk-build clean all NDK_DEBUG=1
构建
我已在下面添加gdb
输出。
非常感谢任何帮助。
编辑:问题可能是'cp'命令失败?空的“使用gdb setup init:”行?
$NDK/ndk-gdb --verbose
Android NDK installation path: /Users/flavio/Documents/android-sdk-mac_x86/ndk/android-ndk-r7
Using default adb command: /Users/flavio/Documents/android-sdk-mac_x86/platform-tools/adb
ADB version found: Android Debug Bridge version 1.0.29
Using final ADB command: '/Users/flavio/Documents/android-sdk-mac_x86/platform-tools/adb'
Using auto-detected project path: /Users/flavio/MacDevel/nTrack/trunk/n-Track_EX/Android/AndroidTesting
Found package name: com.ntrack.ntrack
ABIs targetted by application: armeabi
Device API Level: 12
Device CPU ABIs: armeabi-v7a armeabi
Compatible device ABI: armeabi
Found debuggable flag: false
Found gdbserver under libs/armeabi, assuming app was built with NDK_DEBUG=1
Found device gdbserver: /data/data/com.ntrack.ntrack/lib/gdbserver
Using gdb setup init:
Using toolchain prefix: /Users/flavio/Documents/android-sdk-mac_x86/ndk/android-ndk-r7/toolchains/arm-linux-androideabi-4.4.3/prebuilt/darwin-x86/bin/arm-linux-androideabi-
Using app out directory: ./obj/local/armeabi
Found data directory: '/data/data/com.ntrack.ntrack'
Found running PID: 2302
Launched gdbserver succesfully.
Setup network redirection
## COMMAND: /Users/flavio/Documents/android-sdk-mac_x86/platform-tools/adb forward tcp:5039 localfilesystem:/data/data/com.ntrack.ntrack/debug-socket
## COMMAND: /Users/flavio/Documents/android-sdk-mac_x86/platform-tools/adb shell run-as com.ntrack.ntrack lib/gdbserver +debug-socket --attach 2302
## COMMAND: /Users/flavio/Documents/android-sdk-mac_x86/platform-tools/adb pull /system/bin/app_process ./obj/local/armeabi/app_process
Attached; pid = 2302
Listening on sockaddr socket debug-socket
1269 KB/s (9828 bytes in 0.007s)
Pulled app_process from device/emulator.
## COMMAND: /Users/flavio/Documents/android-sdk-mac_x86/platform-tools/adb pull /system/lib/libc.so ./obj/local/armeabi/libc.so
2988 KB/s (275874 bytes in 0.090s)
Pulled libc.so from device/emulator.
usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file target_file
cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file ... target_directory
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "--host=i686-apple-darwin --target=arm-elf-linux".
(no debugging symbols found)
Error while mapping shared library sections:
/system/bin/linker: No such file or directory.
Error while mapping shared library sections:
libc.so: Undefined error: 0.
Error while mapping shared library sections:
libstdc++.so: Undefined error: 0.
Error while mapping shared library sections:
libm.so: Undefined error: 0.
Error while mapping shared library sections:
liblog.so: Undefined error: 0.
Error while mapping shared library sections:
libcutils.so: Undefined error: 0.
Error while mapping shared library sections:
libz.so: Undefined error: 0.
Error while mapping shared library sections:
libutils.so: Undefined error: 0.
Error while mapping shared library sections:
libbinder.so: Undefined error: 0.
Error while mapping shared library sections:
libexpat.so: Undefined error: 0.
Error while mapping shared library sections:
libcrypto.so: Undefined error: 0.
Error while mapping shared library sections:
libicuuc.so: Undefined error: 0.
Error while mapping shared library sections:
libicui18n.so: Undefined error: 0.
Error while mapping shared library sections:
libsqlite.so: Undefined error: 0.
Error while mapping shared library sections:
libssl.so: Undefined error: 0.
Error while mapping shared library sections:
libstlport.so: Undefined error: 0.
Error while mapping shared library sections:
libnativehelper.so: Undefined error: 0.
Error while mapping shared library sections:
libnetutils.so: Undefined error: 0.
Error while mapping shared library sections:
libEGL.so: Undefined error: 0.
Error while mapping shared library sections:
libwpa_client.so: Undefined error: 0.
Error while mapping shared library sections:
libhardware_legacy.so: Undefined error: 0.
Error while mapping shared library sections:
libpixelflinger.so: Undefined error: 0.
Error while mapping shared library sections:
libhardware.so: Undefined error: 0.
Error while mapping shared library sections:
libemoji.so: Undefined error: 0.
Error while mapping shared library sections:
libjpeg.so: Undefined error: 0.
Error while mapping shared library sections:
libquramimagecodec.so: Undefined error: 0.
Error while mapping shared library sections:
libskia.so: Undefined error: 0.
Error while mapping shared library sections:
libui.so: Undefined error: 0.
Error while mapping shared library sections:
libGLESv2.so: Undefined error: 0.
Error while mapping shared library sections:
libsurfaceflinger_client.so: Undefined error: 0.
Error while mapping shared library sections:
libgui.so: Undefined error: 0.
Error while mapping shared library sections:
libcamera_client.so: Undefined error: 0.
Error while mapping shared library sections:
libdvm.so: Undefined error: 0.
Error while mapping shared library sections:
libGLESv1_CM.so: Undefined error: 0.
Error while mapping shared library sections:
libETC1.so: Undefined error: 0.
Error while mapping shared library sections:
libsecril-client.so: Undefined error: 0.
Error while mapping shared library sections:
libsisodrm.so: Undefined error: 0.
Error while mapping shared library sections:
libsonivox.so: Undefined error: 0.
Error while mapping shared library sections:
libstagefright_foundation.so: Undefined error: 0.
Error while mapping shared library sections:
libmedia.so: Undefined error: 0.
Error while mapping shared library sections:
libnfc_ndef.so: Undefined error: 0.
Error while mapping shared library sections:
libusbhost.so: Undefined error: 0.
Error while mapping shared library sections:
libhwui.so: Undefined error: 0.
Error while mapping shared library sections:
libbluedroid.so: Undefined error: 0.
Error while mapping shared library sections:
libdbus.so: Undefined error: 0.
Error while mapping shared library sections:
libandroid_runtime.so: Undefined error: 0.
Error while mapping shared library sections:
libvorbisidec.so: Undefined error: 0.
Error while mapping shared library sections:
libstagefright_yuv.so: Undefined error: 0.
Error while mapping shared library sections:
libdrmframework.so: Undefined error: 0.
Error while mapping shared library sections:
libstagefright_amrnb_common.so: Undefined error: 0.
Error while mapping shared library sections:
libstagefright_enc_common.so: Undefined error: 0.
Error while mapping shared library sections:
libstagefright_avc_common.so: Undefined error: 0.
Error while mapping shared library sections:
libstagefright.so: Undefined error: 0.
Error while mapping shared library sections:
libmtp.so: Undefined error: 0.
Error while mapping shared library sections:
libmedia_jni.so: Undefined error: 0.
Error while mapping shared library sections:
libbcc.so: Undefined error: 0.
Error while mapping shared library sections:
libRS.so: Undefined error: 0.
Error while mapping shared library sections:
librs_jni.so: Undefined error: 0.
Error while mapping shared library sections:
libharfbuzz.so: Undefined error: 0.
Error while mapping shared library sections:
libwebcore.so: Undefined error: 0.
Error while mapping shared library sections:
libnvos.so: Undefined error: 0.
Error while mapping shared library sections:
libnvrm.so: Undefined error: 0.
Error while mapping shared library sections:
libnvrm_channel.so: Undefined error: 0.
Error while mapping shared library sections:
libnvddk_2d_v2.so: Undefined error: 0.
Error while mapping shared library sections:
gralloc.tegra.so: Undefined error: 0.
Error while mapping shared library sections:
libnTrackFramework.so: Undefined error: 0.
Error while mapping shared library sections:
libnTrackWinOnMac.so: Undefined error: 0.
Error while mapping shared library sections:
libnTrackDSPDll.so: Undefined error: 0.
Error while mapping shared library sections:
libnTrackNativeControls.so: Undefined error: 0.
Error while mapping shared library sections:
libnTrackEngine.so: Undefined error: 0.
Error while mapping shared library sections:
libgl2jni.so: Undefined error: 0.
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
0xaff0c174 in ?? ()
gdb: Unable to get location for thread creation breakpoint: requested event is not supported
(no debugging symbols found)
gdb: Unable to get location for thread creation breakpoint: requested event is not supported
gdb: Unable to get location for thread creation breakpoint: requested event is not supported
Killing inferior
/Users/flavio/MacDevel/nTrack/trunk/n-Track_EX/Android/AndroidTesting/jni/obj/local/armeabi/gdb.setup:4: Error in sourced command file:
Remote communication error: Connection reset by peer.
答案 0 :(得分:10)
我遇到了同样的问题。原来问题是我在$ PROJECT_DIR / jni文件夹中执行ndk-gdb。向上移动一个级别并从$ PROJECT_DIR执行修复了断开连接。