繁体   English   中英

如何使用Eclipse CDT进行远程调试而不使用gdbserver?

[英]How to do remote debugging with Eclipse CDT without gdbserver?

我们在Windows上使用Eclipse CDT 5 C ++ IDE在远程AIX主机上开发C ++应用程序。

Eclipse CDT能够使用gdbserver执行远程调试。 不幸的是,AIX上不支持gdbserver。

是否有人熟悉使用Eclipse CDT远程调试而无需gdbserver? 也许使用SSH shell连接到gdb?

最后我现在无论如何都得到了远程运行的gdb。 在任务栏上的Bug符号中,我进行了调试配置 - GDB硬件调试。

在主C / C ++应用程序中,我在可执行文件的Samba共享上设置完整路径( X:\\abin\\vlmi9506 )。 我还在项目中的X:\\abin上设置了一个链接文件夹。 然后我在GDB安装程序中修改了我的批处理脚本。 它不是直接在plink-session中调用gdb而是直接调用unix-shell-script来打开gdb。 通过这个,我可以在进行调试之前为程序设置一些unix环境变量。 我的批次中的电话:

plink.exe prevoax1 -l suttera -pw XXXXX -i /proj/user/dev/suttera/vl/9506/test/vlmi9506ddd.run 20155 dev o m

在unix脚本中,我使用eclipse中的命令行params启动了gdb,这是我在以前的tryals中找到的。 shell命令中的调用如下所示:

gdb -nw -i mi -cd=$LVarPathExec $LVarPathExec/vlmi9506

然后IBM就为AIX提供了gdb 6.0。 我在http://www.perzl.org/aix/index.php?n=Main.Gdb网上找到了6.8版本。 我们的管理员安装了它

我现在可以逐步完成程序并观察变量。 我甚至可以直接在console-view中编写gdb-commands。 yabadabadooooooo

希望对其他人也有帮助。 不能说,真正的赢家行动是什么。 但每个答案都提出了更多新问题。 现在我有3个。

  1. 当我启动调试配置时,我必须在工具栏中单击重启才能真正进入主程序。 是否有可能直接进入主要而不重新启动?
  2. 在AIX上,我们的程序首先被嵌入式sql预处理。 预处理的c源放在另一个目录中。 当我单击该行以设置断点时,我收到警告“未解析的断点”,并且在gdb-console中我看到,break被设置为预处理的源,这是错误的。 是否可以在正确的源上设置断点?
  3. 我们在AIX上使用CICS。 使用xldb-Debugger和CICS的CDCN命令,当我们进入程序时,我们管理调试开始。 是否有可能使用gdb-eclipse远程(在plink中)获得它?

在一个我无法真正测试答案的问题上,我通常不会在黑暗中拍摄,但由于这个问题已经坐了一天,我会试一试。 看起来似乎:

http://wiki.eclipse.org/TM_and_RSE_FAQ#How_can_I_do_Remote_Debugging_with_CDT.3F

...即使自创建维基页面后CDT发生了变化,您仍然可以将调试命令更改为:

ssh remotehost gdb

而不是使用使用gdbserver的TM。 这可能比TM远程调试稍慢,因为它实际上使用本地gdb,但另一方面,您不必使用NFS或SMB安装源代码以使其可供本地调试器使用(如果你在局域网上,无论如何都无关紧要)。

还有一个针对linux的参考TCF实现,你可能有或没有运气重新编译AIX,但如果gdbserver不可用,它允许远程调试:

http://wiki.eclipse.org/DSDP/TM/TCF_FAQ

我还尝试用windows eclipse-cdt-gdb远程调试aix-appl。 最后因unix / windows路径问题而被阻止。 也许我的结果可以帮助你更进一步 - 也许你已经有了它的工作。 我对你的评论感兴趣。 在eclipse新闻门户网站上问道 - 按照martin oberhuber的回答(再次感谢)尝试了dsp dd(也阻塞了路径问题)并在eclipse bugzilla中设置了一个请求。

这里有新闻链接: http//www.eclipse.org/newsportal/article.php?id = 406 group = eclipse.dsdp.tm这里我的bugzilla: https//bugs.eclipse.org/bugs/show_bug.cgi ?ID = 252758

目前我们仍然使用xldb调试localy,但此刻我正在尝试ddd-gdb。 至少本地gdb正在运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM