Eclipse CDT自定义调试器

时间:2015-12-03 23:07:25

标签: eclipse eclipse-plugin eclipse-cdt

我想扩展eclipse cdt的调试器,以便它能够默认跳过具有指定行号的行(步骤)。

我想知道可以扩展什么,因为我不需要编写一个全新的调试器,c / c ++函数就像它一样好。

1 个答案:

答案 0 :(得分:1)

这是一个非常广泛的问题,所以我为你提供了一些起点,以便你可以缩小你的问题范围。

DSF-GDB

Eclipse中的C / C ++调试器由CDT的DSF(调试服务框架)提供。 DSF是一个令人惊讶但复杂的异步框架,用于编写调试器.DSF-GDB是用于GDB调试器的DSF实现。

  1. 我建议从DSF Tutorial
  2. 开始
  3. 尝试使用DSF-GDB自定义扩展示例插件org.eclipse.cdt.examples.dsf.gdb
  4. 查看How to extend DSF-GDB
  5. 如果您在C代码中有特定的行,则需要注意并让您的用户了解有关编译器优化的限制。例如如果你写:
  6. int x = 2
    x++;
    x++;
    

    并期望能够运行第1行和第3行并跳过2,然后您将不得不参与编译器,而不仅仅是调试器,因为编译器通常会将上述内容优化为int x = 4

    CDI调试器

    预计将于2016年6月发布的CDT 9.0中删除CDI Debugger,即较旧的DSF之前的CDT调试器.CDI调试器与org.eclipse.cdt.debug.core.CDebugger扩展点相关联。请参阅CDT联合主管MarcDoug以及wiki entry的消息。因此,不要将新的开发工作建立在CDI上。