Linux学习之基础四

gdb调试

  • 生成可执行文件之前必须加参数-g
  • 启动gdb
    • gdb program(program也就是可执行文件)
  • 程序运行参数
    • set args可指定运行时的参数。如:set args 10 20 30 40 50
    • show args命令可以查看设置好的运行参数
    • run启动程序
  • 设置断点
    • b 10在源程序第10行设置断点
    • b funcfunc函数入口处设置断点
    • b filename:linenum在源文件filenamelinenum行处停住
    • b filename:function在源文件filenamefunction函数的入口处停住
    • b class::function或function(type,type)在类classfunction函数的入口处停住
  • 查询断点
    • info b
  • 条件断点
    • b test.c:8 if a = 5
  • 维护停止点
    • delete 1-3删除编号1到3的断点
    • disable 1-3停止编号1到3的断点(未删除)
    • enable 1-3开始执行停止的1到3号的断点
  • 调试代码
    • r运行
    • n单步跟踪,不会进入函数体
    • s单步跟踪,会进入函数体
    • finish退出进入的函数
    • continue跳出循环,继续运行程序
  • 查看运行时数据
    • p count打印count的值
  • 自动显示
    • display 变量名
    • info display查看display设置的自动显示的信息
    • delete display dnums删除自动显示,dnums为所设值好的编号。
    • disable display dnums使其失效,但不删除
    • enable display dnums使其恢复
  • 查看变量类型
    • ptype width查看变量width的类型
  • 显示源代码
    • list linenum显示行号为linenum附近的代码
    • list function显示函数function的代码

Makefile

Linux学习之基础四_第1张图片

你可能感兴趣的:(Linux学习,linux学习)