C语言 GDB 如何在链接文件中设置断点?



假设我有我的主文件:main.c,与file1.c和file2.c链接,其中file1和file2包含它们的头文件:file1.h,file2.h

我把它们编译在一起,是这样的:

gcc main.c file1.c file2.c

这将创建要运行的可执行文件./a.out

在 GDB 中,如何在 main.c 中设置断点?我试过了

b main.c

这给了我这个输出:

Make break-point pending on future shared library load? yes or no

我对此做出了yes回应,但即使在我说b 232之后,它也从未在任何地方设置断点:行号,我什至尝试了b main 232b main.c 232但这些工作都没有。

你想要的是以下内容(参见 GDB 文档(:

break main.c:232

并且不要忘记使用-g进行编译,否则生成的程序中将不会出现行号信息。

作为@MarcoBonelli答案的替代方法,您可以使用

break main.c:main

或者由于项目中不能有多个main函数,因此您可以简单地使用

break main

这样做的优点是不必搜索行号。

最新更新