您的位置:首页 > 运维架构 > Linux

Linux下使用GDB工具调试程序

2015-12-10 15:27 686 查看
在Linux下调试程序一般用GDB来执行。

这里简要介绍一下是否gdb调试程序的方法:

(1)进入gdb调试:

gdb + 已经编译通过的可执行程序 -》 就进入调试模式。

例如:gdb MiddlePublisher

(2)r + 运行时的参数 -》 开始运行可执行程序。

例如 r -lxml2 -f refile

(3)b + 断点 -》设置调试的断点。

两种:一种是:b CMSTask.cpp:200 表示在CMSTask.cpp文件的第200行设置断点。

另一种:b TaskManager::buildPubWinTask 表示在执行buildPubWinTask这个函数的时候停止。

(4)取消断点:

dis 1 表示取消第一个断点

dis 2 表示取消第二个断点

(5)查看设置断点信息:

info b

(6)在断点停止处查看所在代码的详细信息:

l

(7)可以在gdb中直接编译,然后再重新运行时,gdb会直接执行新编译好的可执行程序。

例如:直接在gdb下执行make后再重庆运行。

(8)跟进一个函数:s

如果设置的断点是在一个函数入口。到达该断点时,键入s就可以进入该函数内部进行调试。如果有多个函数就多次键入S来进入内部的函数。

(9)单步执行:n

例如:直接在gdb下键入n,进行单步执行

(10)继续执行:c

例如:直接在gdb键入c,可以在断点停止后继续执行。

如果断点是一个循环,则可以继续执行一个循环,再停止断点上面。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux gdb 调试