gdb调试教程(gdb调试)

发布时间:2023-02-05 16:20:13 编辑: 来源:
导读 大家好,小讯来为大家解答以上问题。gdb调试教程,gdb调试很多人还不知道,现在让我们一起来看看吧!1、调试可执行文件。2、如果需要使用gd

大家好,小讯来为大家解答以上问题。gdb调试教程,gdb调试很多人还不知道,现在让我们一起来看看吧!

1、 调试可执行文件。

2、 如果需要使用gdb调试程序,请在gcc中添加-g选项。

3、 调试可执行文件时,执行gdb程序。我们在这里生成一个hello的可执行文件,执行命令是gdb hello。

4、 Gdb也可以调试核心文件。

5、 首先,介绍核心文件的生成。当一个程序在执行过程中出现段错误,但核心文件不是在执行目录中生成的,可以在ulimit -c C中查看.

6、 Ulmit-c显示了核心转储文件的最大大小,这里是零:核心转储被禁止。

7、 此时我们执行ulimit -c unlimited,然后再次执行可执行文件。这个时候我们可以看到有一个核心文件。

8、 Gdb还可以调试正在运行的程序,也就是服务程序。

9、 如果您的程序是服务程序,您可以在服务程序运行时指定进程ID。Gdb会自动附加并调试。

10、 gdb运行到调试模式后,可以使用以下基本命令进行操作。

11、 这里我们以hello可执行程序的调试为例。

12、 执行gdb hello进入调试模式后,执行R就可以运行程序了,但我们一般不会直接这么做。一般在调试时,我们先设置断点,采用B加行号的模式。设置断点后,执行R后,程序会卡在添加断点的那一行。

13、 使用命令p加上变量名,可以查看变量的值和堆栈。

14、 以下是一些常用的命令:

15、 观察变量:(gdb)观察n

16、 在某个周期,往往希望能够观察到某个变量的变化。这时,你可以键入命令‘watch’来观察变量的变化,GDB已经在‘n’处设置了一个观察点。

17、 单步操作:(gdb)n

18、 程序继续运行

19、 使程序继续向下运行,直到再次遇到断点或程序结束;

20、 出口广发:(广发)q

本文到此结束,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!

热点推荐

精选文章