如何阻止gdb单步执行Fortran代码中的内部函数?

时间:2013-06-24 07:34:07

标签: gdb centos fortran

我正在使用gdb调试一些Fortran代码,并且它继续逐步执行内部Fortran函数的C代码。例如,如果我尝试跳过write调用,它会跳转到write.c。有没有办法阻止这种行为?我在CentOS 6.3上,使用gdb 7.2和gfortran 4.4。

2 个答案:

答案 0 :(得分:2)

通常我认为“下一步”应该有效。但我不知道Fortran,也许还有一些有趣的东西。

另一种方法是确保您没有安装内在函数的调试信息。如果你试图“进入”它们,gdb将自动跳过没有debuginfo的函数。

最后一种方法是升级你的gdb并使用新的“skip”命令,该命令完全是为这个用例添加的。

答案 1 :(得分:0)

当我在交叉编译的目标上进行远程调试时,我遇到了类似这样的问题,其中next不工作。我终于意识到我使用gdb的file命令加载了错误的可执行文件/符号表。下一步是进入当前代码行的地方。根据我提供的信息,它可以做到最好:)