我已经尝试了近一个星期来调试ndk示例hello-jni的c代码,但没有运气。 我曾尝试关注如何执行此操作的许多教程/博客文章,但再次没有运气。
E.g。如果我遵循本教程:http://mhandroid.wordpress.com/2011/01/23/using-eclipse-for-android-cc-debugging/,我只能进入第3步,当我运行ndk-gdb时,它说: “cp:无法统计`.libs / armeabi / gdb.setup':没有这样的文件或目录”
我已经注释掉了许多教程中描述的ndk-gdb的最后一行。
这是我从cygwin运行ndk-gdb时得到的结果:
$ / cygdrive / d / data / klr200 / construction / software / local / pc / android-ndk -r8d / ndk -gdb-eclipse --project = / cygdrive / d / data / klr200 / construction / software / local / pc / android-ndk -r8d / samples / hello-jni --verbose --force --adb = / cygdrive / d / data / klr200 / construction / software / local / pc / android-sdk / platform-tools / adb .EXE
Android NDK安装路径:/ cygdrive / d / data / klr200 / construction / software / local / pc / android-ndk-r8d
使用特定的adb命令:/cygdrive/d/data/klr200/construction/software/local/pc/android-sdk/platform-tools/adb.exe
发现ADB版本:Android Debug Bridge版本1.0.31
使用ADB标志:
使用指定的项目
路径:/ cygdrive / d / data / klr200 / construction / software / local / pc / android-ndk -r8d / samples / hello-jni
找到包名:com.example.hellojni
申请目标ABIs:armeabi
设备API级别:10
设备CPU ABIs:armeabi
兼容设备ABI:armeabi
使用gdb setup init:./ libs / armeabi / gdb.setup
使用工具链前缀:/cygdrive/d/data/klr200/construction/software/local/pc/android-ndk-r8d/toolchains/arm-linux-androideabi-4.6/prebuilt/windows/bin/arm-linux-androideabi- <登记/> 使用app out目录:./ obj / local / armeabi
找到可调试标志:真实 找到设备gdbserver:/data/data/com.example.hellojni/lib/gdbserver
找到数据目录:'/ data / data / com.example.hellojni'
找到运行PID:351
杀死现有的调试会话
命令:adb_cmd shell kill -9 496
[1] Kill run-as com.examp ...
成功启动了gdbserver 设置网络重定向
命令:adb_cmd shell run-as com.example.hellojni lib / gdbserver + debug-socket --attach&gt; 351
命令:adb_cmd forward tcp:5039 localfilesystem:/data/data/com.example.hellojni/debug-socket
命令:adb_cmd pull / system / bin / app_process obj / local / armeabi / app_process
附; pid = 351
听取Unix套接字调试套接字
16 KB / s(5629字节,0.329秒)
从设备/模拟器中拉出app_process 命令:adb_cmd pull / system / bin / linker obj / local / armeabi / linker
48 KB / s(在0.786s中39404字节)
从设备/仿真器中拉出链接器 命令:adb_cmd pull /system/lib/libc.so obj / local / armeabi / libc.so
77 KB / s(3.468s中273868字节)
从设备/仿真器中拉出libc.so cp:无法统计`./libs/armeabi/gdb.setup':没有这样的文件或目录
我无法在任何地方找到app_process(据我所知这非常重要),如果我查看项目目录... / libs / armeabi,那么gdb.setup文件就在那里。
我正在使用:
答案 0 :(得分:0)