中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

GDB

介绍

GDB是GNU开源组织发布的一个强大的UNIX及类UNIX环境下的用户态程序调试工具,是C/C++程序调试的主流工具。

安装

在CentOS操作系统下,通过yum安装GDB。

yum install gdb   //CentOS

使用方式

  • 直接调试应用程序
    gdb program

    program为待调试的可执行文件。

  • 调试应用程序的core文件
    gdb program core

    core为程序非法执行后core dump后产生的文件。

  • GDB调试运行中的程序
    gdb program $PID

    PID为需要调试的程序PID号。

  • GDB调试命令
    (gdb) command *args

    上述三种方式进入GDB调试页面,会出现(gdb),command是需要执行的调试命令(部分命令有简写),*args是部分调试命令需要的参数。

    常用参数如下:

    命令

    用途

    r

    运行程序,当遇到断点后,程序会在断点处停止运行,等待用户输入下一步的命令。

    c

    继续执行,到下一个断点处。

    n

    单步跟踪程序,当遇到函数调用时,不进入此函数体,直接调用函数。

    s

    单步调试如果有函数调用,则进入函数。

    until

    运行程序直到退出循环体。

    finish

    运行程序,直到当前函数完成返回。

    call

    用程序中可见的函数,并传递“参数”。

    l

    查看源码;list n查看n行前后10行,list func查看函数源码。

    b n

    在n行处加断点。

    b func

    在函数func()的入口处设置断点。

    clear n

    清除第n行的断点。