是否有人有使用{Native}的调解程序如here所述调试Native Client应用程序的经验?
我正在尝试在应用程序代码中触发软件断点或异常,该代码将在其触发的源代码行中暂停附加并运行的GDB,并能够继续执行。
我可以通过创建非法地址异常来做到这一点,例如:
#define SOFTBREAK { int *p=0; p=0; }
确实进入了使用define的调试器:
Program received signal SIGSEGV, Segmentation fault.
0x0000000c00209ba2 in CTestTestList::Init (this=0xfe55d080) at ../testlist.cpp:1242
1242 in ../testlist.cpp
但是我似乎无法使用 jump 命令继续执行以跳过中断线(使用下一个源代码行或汇编代码地址)。在继续之前,我是否需要确认或清除分段错误?
有没有人知道是否有可能继续使用非法地址例外进行exectuion?或者是否有可以使用的不同方法,例如,引发软件异常,(EXC_SOFTWARE)? 任何帮助或建议将不胜感激。
(顺便说一句,这是我的第一篇关于堆叠溢出的帖子,所以如果我没有遵循这篇文章的任何礼节而道歉。)
非常感谢,
安迪