Mic*_*ing 14 c++ eclipse aix remote-debugging eclipse-cdt
我们在Windows上使用Eclipse CDT 5 C++ IDE在远程AIX主机上开发C++应用程序.
Eclipse CDT能够使用gdbserver执行远程调试.不幸的是,AIX上不支持gdbserver.
是否有人熟悉使用Eclipse CDT远程调试而无需gdbserver?也许使用SSH shell连接到gdb?
小智 11
最后我现在无论如何都得到了远程运行的gdb.在任务栏上的Bug符号中,我进行了调试配置 - GDB硬件调试.
在主C/C++应用程序中,我在可执行文件(X:\abin\vlmi9506
)的Samba共享上设置完整路径.我还在项目中设置了一个链接文件夹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
Run Code Online (Sandbox Code Playgroud)
在unix脚本中,我使用eclipse中的命令行params启动了gdb,这是我在以前的tryals中找到的.shell命令中的调用如下所示:
gdb -nw -i mi -cd=$LVarPathExec $LVarPathExec/vlmi9506
Run Code Online (Sandbox Code Playgroud)
然后IBM就为AIX提供了gdb 6.0.我在http://www.perzl.org/aix/index.php?n=Main.Gdb网上找到了6.8版本.我们的管理员安装了它
我现在可以逐步完成程序并观察变量.我甚至可以直接在console-view中编写gdb-commands.yabadabadooooooo
希望对其他人也有帮助.不能说,真正的赢家行动是什么.但每个答案都提出了更多新问题.现在我有3个.
我通常不会在黑暗中对一个我无法真正测试答案的问题进行尝试,但由于这个问题已经存在了一天,我会尝试一下。从看看来:
http://wiki.eclipse.org/TM_and_RSE_FAQ#How_can_I_do_Remote_Debugging_with_CDT.3F
...即使自 wiki 页面创建以来 CDT 发生了变化,您仍然应该能够将调试命令更改为:
ssh 远程主机 gdb
而不是使用使用 gdbserver 的 TM。这可能会比 TM 远程调试稍微慢一些,因为它实际上使用本地 gdb,但另一方面,这样您就不必通过 NFS 或 SMB 挂载源代码来使其可用于本地调试器(并且如果你在局域网上,无论如何,这可能并不重要)。
还有一个针对 Linux 的参考 TCF 实现,您可能会也可能不会为 AIX 重新编译它,但它允许在 gdbserver 不可用时进行远程调试:
http://wiki.eclipse.org/DSDP/TM/TCF_FAQ