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

C GDB如何在链接文件中设置断点?,c,debugging,gdb,C,Debugging,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 我回答

假设我有一个主文件: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
,但即使在我说了
B232
,它也不会在任何地方设置断点:行号,我甚至尝试了
B232
B232
,但这些工作中也没有一项..

您想要的是以下内容(请参阅):

breakmain.c:232

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

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

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

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