gdp调试—Linux

目录

介绍

使用


介绍

代码分为debug模式和release模式

如果一份代码要被调试,这份代码必须是debug

Linux下编译代码默认是是release模式

如果你想代码是debug模式

必须加上 - g

小提:

vim默认:命令模式

gcc默认:release模式

Linux中形成的可执行程序格式:ELF

在debug发布时,一定会给可执行程序内部添加debug信息

debug形成的可执行程序 > release形成的可执行程序

使用

gdp + 可执行程序

1.打开代码

l (list)

l 0 从0行开始打开代码

2.运行

r (run)

3.打断点

b (breakpoint) + 行号

b 源文件:行号

b 函数 (打在函数入口处)

b 文件名 函数或者行号

4.查看断点

info b

每个断点都有编号

5.删除断点

d(deletepoint)+ num(断点编号)

6.禁用和开启断点

disable + Num 禁用断点

enable + Num 开启断点

7.逐过程(把函数当成一条语句)

n

8.逐语句

s

9.查看变量细节

display +变量/变量地址(常显示)

undisplay +变量/变量地址(关闭常显示)

10.查看变量细节

p +变量/变量地址

11.运行

until 运行到指定位置

finish 运行到当前函数结尾

c 从一个断点运行到另一个断点

12.查看调用堆栈

bt

13.更改变量的值

set var i(变量)= ?

14.查看所有变量

info locals

相关推荐
一技安身15 小时前
【Docker】 镜像导出 & 导入,实验环境aarch64(arm64)Linux操作系统
linux·docker·容器
平头哥AI15 小时前
Day 22 _ 包装错误别丢链_%w、errors.Is 与 errors.As
android·服务器·学习·golang·go
代码村新手16 小时前
Linux调试器-gdb的使用
linux
新时代牛马16 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
两点王爷18 小时前
解决 Linux 中 version `CXXABI_1.3.8‘ not found 报错
linux·运维·服务器
xx~t18 小时前
嵌入式——51单片机1
linux·c语言·单片机·嵌入式硬件·51单片机
啦啦啦啦啦zzzz18 小时前
利用RAII机制进行日志的采集
linux·服务器·c++·网络编程·c++20
0+11118 小时前
Linux --线程概念与控制
linux·运维·服务器·jvm
nLif19 小时前
基于GTK的简易MFC对话框兼容层 -- MfcToGTK
linux·c++·mfc·gtk
宽海智能仓储物流19 小时前
航发自动化立体库异构系统改造:宽海智能30天联调技术全解析
运维·数据仓库·自动化