繁体   English   中英

使用gdb在Emacs中调试Fortran代码

[英]Debugging Fortran code in Emacs with gdb

我在使用gdb调试emacs中的Fortran代码时遇到问题。

GDB启动了罚款和程序加载确定并停在第一个断点,这是我年初设定的main 然后,当我键入n转到下一行时,程序将一直运行到整个过程(就像我键入c ),而不是转到下一行。 为了解决这个问题,我将另一个断点设置得更远。 击中c后(在main中的第一个断点处),代码跳至并在后一个断点处停止(这是我想要的)。

但是,在这一点上,我无法再输入gdb命令,因为源代码已移至顶部窗口,输出已移至底部窗口(而通常所有gdb输入命令和程序输出均位于顶部窗口中,并且在底部遍历的源代码)。 因此,现在在这一点上,当我输入gdb命令时,它就成为源代码的一部分,并且我无法使用nc来导航它-而是代码中包含了一堆n和一个c

我正在运行Fedora 18和GNU Emacs 24.3.1。 另外,要在emacs中运行gdb,它坚持要求我使用开关-i=mi 在我击中Mx gdb ,底部的行弹出为: Run gdb (like this): gdb -i=mi ... 我尝试玩弄开关,例如-annotate=3无济于事。

如果我理解正确,您将在emacs中打开两个窗口,而实际上是输出缓冲区和源代码缓冲区已替换了gdb命令缓冲区。

您可以切换回与CX B * gud- PROGRAMNAME * RET,其中PROGRAMNAME是要调试的程序的名称gdb命令缓冲区。 您可能会发现创建一个新窗口并在其中切换到gdb命令缓冲区很有用。

发生这种情况是因为gdb模式不够聪明,无法使命令窗口位于顶部。 您可以使用Mx gdb-many-windows对此进行一些改进。

两个问题也可能会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM