0

我正在使用 Windows 7/64 下的 GPS IDE 在 Ada 2012 中使用简单的 hello world 单 .adb 文件程序。如果我将所有对象和源文件放在一起,一切正常。我确实必须转到项目属性 Switches 选项卡并选择 Ada 选项卡并启用“调试信息”复选框

现在我想更好地组织我的项目并将目标文件放在他们自己的目录中。我使用了项目属性Objects选项卡并将设置从 更改.ojb。我可以构建和运行。现在,当我去调试并单击 hello.adb 中的一行时,我得到“没有名为 hello.adb 的源文件。我猜它在 obj 目录中查找。我尝试发出set directory命令并给出了绝对路径父文件夹。随后的show directories命令显示包含我的文件夹hello.adb文件现在在路径中,但仍然没有乐趣。我不能再设置断点。这似乎不是一个不寻常的操作,我怀疑还有另一种更高级别的方法来指定调试器的源路径。任何人都知道它是什么,或者任何关于让它工作的提示?

4

1 回答 1

4

GPS 本身不做调试。为此,它生成了一个名为 gdb 的命令行调试器。您可以尝试使用 --traceon=GVD.OUT 运行 GPS(或者,在 Windows 上通常更简单,更改 %USERPROFILE%.gps\traces.cfg 文件并添加“GVD.OUT=yes”)。这将在 %USERPROFILE%.gps\log.* 中记录 GPS 和 gdb 之间的所有通信,这可能有助于理解 gdb 没有为文件输出正确的完整路径的原因。还请仔细检查“-g”是否确实传递给了编译器(可能在从 obj 中删除所有文件之后)

于 2015-03-06T08:41:04.893 回答