Android:调试本机代码时出现Eclipse gdb错误

时间:2012-04-04 19:21:22

标签: android eclipse debugging gdb

我在线阅读了几个教程,试图设置gdb来调试本机代码:

  1. “Android NDK初学者指南”一书的第11章。
  2. 视频:http://www.youtube.com/watch?v=hMV7Xqcn39k&list=PLD89B891EF9D26F14&feature=mh_lolz
  3. 论坛:http://wiki.eclipse.org/Sequoyah/ndk_guide
  4. 他们都没有让我的调试器完全正常工作。

    我现在通过以下步骤遇到一个特定问题,这些步骤已被上述所有教程同意作为调试本机代码的正确步骤:

    1. 在Eclipse中,启动我的JAVA调试会话并在onCreate()方法的第一个断点处停止。
    2. 在终端中,在我的项目文件夹下,运行ndk-build-eclipse(原始ndk-gdb的副本,没有关于自动连接gdb客户端到服务器的最后一行),没有明显的警告或错误。
    3. 在终端,chmod + x MY_PROJECT / obj / local / armeabi / app_process(我在Mac上),否则我会得到“无法运行MY_PROJECT / obj / local / armeabi / app_process,原因不明”错误。此app_process在我的C ++调试配置中设置为GDB调试器。
    4. 在Eclipse中,启动我的C ++调试配置。
    5. 然后我得到一个错误对话框说:

      Error creating session
       Process Terminated
          Process Terminated
          Process Terminated
      

1 个答案:

答案 0 :(得分:0)

(在问题编辑中由OP解决。转换为社区维基答案。请参阅Question with no answers, but issue solved in the comments (or extended in chat)

OP写道:

  

自己解决了这个问题:

     

我把错误的gdb调试器放在我的C ++调试配置中(在Debugger选项卡下)。

     
      
  • 那个人应该在那里(NDK r7b):   $NDKROOT/toolchains/$ARCH/prebuilt//bin/arm-linux-androideabi-gdb
  •   
  • 我错误地放在那里的那个:   ${PROJECT_DIR}/obj/local/armeabi/app_process,这应该是唯一的   在主选项卡下输入C / C ++应用程序。
  •   
     

解决这个问题解决了我的问题,现在我可以在Eclipse中使用gdb调试本机代码了!!