【问题标题】:Remote debugging C++ application with Eclipse GUI使用 Eclipse GUI 远程调试 C++ 应用程序
【发布时间】:2014-07-25 07:05:27
【问题描述】:

我按照link 中的步骤操作 我设法从命令提示符从我的 Windows 机器调试驻留在 linux 主机中的二进制文件。

我在 linux 中有 gdbserver,我在 windows 中的 mingw 的帮助下安装了 gdb。正如我所说,我可以在 Windows 中提示“目标远程 x.x.x.x:10000 测试”命令并调试我的测试应用程序。

我的问题是我不能用 eclipse gui 做同样的事情,在我看来它有很多按钮和选项,但它们对我来说毫无意义。

我正在选择 debug_configurations-->C/C++ 远程应用程序(唯一允许我输入 linux 机器 ip/port 的应用程序),在“主”选项卡中连接我正在输入我的 linux ip。在调试器选项卡下的同一菜单中,我正在输入窗口的 gdb 路径和 gdbserver 端口。

在做了所有这些之后,我相信我为 eclipse 提供了足够的信息来连接 gdb 服务器,但对于 eclipse 来说还不够。我通过使用 --debug 启动 gdbserver 来检查 gdbserver 日志,gdbserver 永远不会被触发,它不会写入一行日志。 Eclipse 甚至不启动连接。但相反,它给了我一个错误,例如“文件上传期间出错”。这对我来说毫无意义。

我正在使用“Eclipse 版本:Juno Service Release 2”。任何帮助将不胜感激 。

【问题讨论】:

    标签: c++ linux eclipse windows


    【解决方案1】:

    我相信“C/C++ 远程应用程序”选项使用 Eclipse 的RDT(远程开发工具)和RSE(远程系统资源管理器)来连接、上传、执行和调试应用程序本身。它

    如果您只想连接到gdbserver,然后创建“C/C++ 附加到应用程序”调试配置,并在“调试器”选项卡下,将“调试器”设置为 gdbserver。

    【讨论】:

    • 简短、内容丰富、很酷、很棒,谢谢你拯救了我的一天
    【解决方案2】:

    由于其他原因,我在 Eclipse 版本 2019-09 R (4.13.0) 上也遇到了此错误消息。 我非常推荐阅读“如何调试远程应用程序?”段落。来自this great guide

    它解释了您应该使用三个远程调试选项中的哪一个 - Automatic Remote Launcher、Manual Remote Launcher 和 Remote Attach Launcher,以及如何使用每一个。

    我使用了错误的启动器,因此出现错误,而在远程端 gdbserver 正在侦听并等待连接。切换到手动远程启动器解决了它。

    例如它说:

    如果您没有安装 RSE,则无法使用“自动遥控 发射”

    RSE = 远程系统资源管理器最终用户运行时

    启动器设置是从远程调试配置窗口的底部配置的 - “使用 GDB (DSF) 自动/手动远程调试启动器”。

    【讨论】:

      猜你喜欢
      • 2014-08-13
      • 2013-03-19
      • 1970-01-01
      • 2012-08-04
      • 1970-01-01
      • 2013-11-21
      • 1970-01-01
      • 2020-03-10
      • 2013-12-23
      相关资源
      最近更新 更多