2

我想调试以使用 GDB 调试远程应用程序。

我的目标系统是一个正在运行的 FreeBSD 8.3 机器gdbserver。该应用程序已在该框中成功编译。我的 Eclipse CDT 4.2 在安装了最新 MinGW 的 Windows 7 上运行。

这是我要调试的外部程序。它既不是我写的,也不是我的图书馆。我不打算编写自己的程序。在这种情况下,我要调试的是 Subversion 1.8.0-dev。

我创建了一个简单的 C 项目,附上 Subversion 的源代码。创建了一个远程调试配置并将源附加到gdbserver.

现在,eclipse 进入了mainSubversion 的功能,但是当我在另一个附加的源文件中设置断点时,Eclipse 说:没有命名的源文件ra_loader.c或者它只是说“没有可用的源”。

然后它只是存在应用程序。

我在这里想念什么?

4

1 回答 1

0

尝试在此线程上提出的建议

引用 :

  • 1) 运行调试会话并在 Eclipse 中打开 gdb 控制台
    ('Console' 选项卡 -> 'Display Selected Console' 按钮 -> 选择以 'gdb' 结尾的那个)

  • 2) 在控制台中使用命令 'pwd' 打印 gdb 的当前工作目录

  • 3) 使用命令 'info line main' 获取 gdb 期望在其中找到我的“int main(...)”函数的源文件

  • 4)将步骤2的结果与步骤3的结果(应该是相对路径)连接起来,看看它是否匹配我想要的正确源文件

  • 5)在gdb中使用'cd'命令(更改当前工作目录)直到我在步骤4中得到正确的匹配知道gdb的初始工作目录(2)和正确的工作目录(5),我有2个选项: 1) 每次启动调试会话时使用 gdb 的“cd”命令(我可以在 gdb 初始工作目录中设置一个 .gdbinit 文件以自动执行此操作)或 2) 在“调试配置”中设置“源”选项卡,使 Eclipse 使用与 gdb 的初始工作目录匹配的路径(“项目 - 相对于源文件夹的路径”对我有用)

于 2012-10-27T06:59:52.470 回答