gpt4 book ai didi

c++ - 如何在没有 gdbserver 的情况下使用 Eclipse CDT 进行远程调试?

转载 作者:IT老高 更新时间:2023-10-28 22:39:18 27 4
gpt4 key购买 nike

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

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

是否有人熟悉在没有 gdbserver 的情况下使用 Eclipse CDT 进行远程调试的方法?也许使用 SSH shell 连接到 gdb?

最佳答案

现在我终于让 gdb 远程运行了。在任务栏上的 Bug 符号处,我选择了 Debug Configurations - GDB Hardware Debugging。

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

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

在 unix 脚本中,我使用 eclipse 中的命令行参数启动了 gdb,这是我在之前的尝试中发现的。 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 版。 .我们的管理员安装了它。

我现在可以单步执行程序并观察变量。我什至可以直接在控制台 View 中编写 gdb 命令。呸呸呸呸

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

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

关于c++ - 如何在没有 gdbserver 的情况下使用 Eclipse CDT 进行远程调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/81194/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com