GDB简单使用

Posted NN&&DD

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GDB简单使用相关的知识,希望对你有一定的参考价值。

GDB简述
一、程序中加入调试信息:gcc -g -o a.ddebu a.c
二、启动gdb:gdb
三、常用命令
  1.backtrace:显示程序中的当前位置和表示如何到达当前位置的栈跟踪(同义词:where)。
  2.breakpoint:在程序中设置一个断点
  3.cd:改变当前工作目录。
  4.clear:删除刚才停止处的断点。
  5.commands:命中断点时,列出将要执行的命令。
  6.continue:从断点开始继续执行。
  7.delete:删除一个断点或监测点,也可与其他命令一起使用。
  8.display:程序停止时显示变量和表达式。
  9.down:下移栈帧,使得另一个函数成为当前函数。
  10.frame:选择下一条continue命令的帧。
  11.info:显示与该程序有关的各种信息。
  12.info break:显示当前断点清单,包括到达断点处的次数等。
  13.info files:显示被调试文件的详细信息。
  14.info func:显示所有的函数名称。
  15.info local:显示当前函数中的局部变量信息。
  16.info prog:显示被调试程序的执行状态。
  17.info var:显示所有的全局和静态变量名称。
  18.jump:在源程序中的另一点开始运行。
  19.kill:异常终止在gdb控制下运行的程序。
  20.list:列出相应于正在执行的程序的源文件内容
  21.next:执行下一个源程序行,人而执行其整体中的一个函数。
  22.print.显示变量或表达式的值。
  23.pwd:显示当前工作目录。
  24.pype:显示一个数据结构(如一个结构或C++类)的内容.
  25.quit:退出gdb.
  26.reverse-search:在源文件中反向搜索正规表达式。
  27.run:执行该程序。
  28.search:在源文件中搜索正规表达式。
  29.set variable:给变量赋值。
  30.signal:将一个信号发送到正在运行的进程。
  31.step:执行下一个源程序行,必要时进入下一个函数。
  32.undisplay display:命令的反命令,不要显示表达式。
  33.until:结束当前循环。
  34.up:上移栈帧,使另一个函数成为当前函数。
  35.watch:在程序中设置一个监测点(即数据断点);
  36.whatis:显示变量或函数类型。
四、习惯性操作
  1.导入文件:file /test.debug
  2.查看文件:list
  3.加入断点行数:break 6
  4.运行程序:run
  5.运行到第一个断点,step,程序运行一步
  6.显示当前变量的值:pirnt **
  7.退出:q

以上是关于GDB简单使用的主要内容,如果未能解决你的问题,请参考以下文章

Makefile和gdb的简单使用

Linux下调试器GDB的简单使用图解

Linux一些工具的简单使用,vim/gcc/gdb/make

linux下如何使用gdb调试

GDB 跳过共享库断点

gdb/pwndbg 常用命令简单整理