当一个函数位于另一个文件夹中的另一个c程序中时,如何使用gdb ddebugger进入该函数?

问题描述 投票:0回答:1

我有一个研究人员编写的现有的'c'代码,我想对它进行调试。这个项目是用MAkE编译的。我试图使用gdb调试器进行调试,假设'A'文件夹包含''。myproject.c', 'myproject', MAKEFILE 和一些子文件夹B,C,D等,现在我调试文件gdb myproject。我在函数1处创建了断点。这个 function 1 位于一个文件中 x.c 在文件夹B中,当我通过 step 命令,它正在执行整个函数,但我想逐行查看。

c debugging gdb
1个回答
1
投票

当我传递步骤命令时,它正在执行整个函数,但我想逐行查看。

这意味着 x.c 编译时没有调试信息(没有 -g 标志)。)

Make文件已经包含了-g标志

什么是 Makefile 是有些无关紧要的。重要的是命令行中的 make 构造来编译 x.c.

运转 make clean all. 这应该(假设适当的 Makefile) 重建整个程序,重新编译 x.c. 现在 样子 在编译时使用的命令行上的 x.c. 它不会有 -g 选项。你需要修改 Makefile 所以它是。

© www.soinside.com 2019 - 2024. All rights reserved.