Linux下的gdb调试
2023-09-14 08:56:53 时间
一、GDB主要帮忙你完成下面四个方面的功能:
1、启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。
2、可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)
3、当程序被停住时,可以检查此时你的程序中所发生的事。
4、动态的改变你程序的执行环境。
二、gdb调试命令
以test.c文件举例
1、正常编译c文件的命令是gcc test.c -o test,如果要进行gdb调试,编译命令应该加上-g : gcc -g test.c -o test
2、启动调试:gdb test
3、设置断点: 使用break命令设置断点,该命令可以简写位 b
然后使用break/b命令给程序添加断点,共有下面几种情况:
① b 函数名 :在某函数入口处添加断点;
② b 行号 : 在指定行添加断点
③ b 文件名 :行号 在指定文件的指定行添加断点
④ b 行号 : if 条件 当条件为真时,指定行号处断点生效,例 b 5 if i=10 ,当i=10时,第5行断点生效
删除断点:delete 断点编号
4、查看设置的所有断点: info break
5、run : 运行代码,遇到第一个断点之后停下
6、单步执行和继续执行命令
next : 执行下一行命令
continue : 运行到下一个断点
7、设置监视点 watch 表达式
删除监视点 delete 监视点编号
8、结束调试 quit (可缩写为q)
9、list 命令:在gdb模式下查看代码
命令总结
相关文章
- [Linux] AWK命令详解(大全)
- 使用 Visual Studio 部署 .NET Core 应用 ——.Net Core 部署到SUSE Linux Enterprise Server 12 SP2 64 位(GNOME 版本3.20.2)
- 为何Apache下.htaccess不起作用,Linux、Windows详解
- [Linux]linux如何把文件切成多块
- [linux]Linux下的log
- Linux 将一般的用户加入sudo组is_not_in_the_sudoers_file._This_incident_will_be_reported解决方法
- Linux下rar及zip压缩包中批量替换某文件脚本
- Linux搭建SVN服务器
- Linux动态链接库的使用
- CentOS 7.4 发布下载,安全稳定的Linux发行版
- linux curl命令手册
- Linux Ubuntu 22.04实现打开、最小化时呈现魔灯效果
- linux如deepin manjaro对笔记本电脑电池的伤害解决方案:TLP:一个可以延长 Linux 笔记本电池寿命的高级电源管理工具
- Linux 0.11-用键盘输入一条命令-42
- 信号概述 硬件异常将产生信号 进程间通信概述 进程间通信 进程间通信功能 Linux 操作系统支持的主要进程间通信的通信机制 linux 进程间通信(IPC)由以下几个部分发展而来 数据传输 信号
- 关于vs2017远程调试linux(ubuntu14.04)环境搭建
- Linux linux echo命令的-n、-e两个参数
- 做一个WINDOWS下破解WIFI。不须要Linux抓包!
- L70.linux命令每日一练 -- 第十章 Linux网络管理命令 -- nc和ssh
- L62.linux命令每日一练 -- 第九章 Linux进程管理命令 -- strace和ltrace
- Linux下的的GDB调试技巧四 —— 常用调试命令(1)
- Linux下的的GDB调试技巧三 —— 启动调试与启动程序
- Linux下的的GDB调试技巧二 —— 基本功能
- Linux驱动调试
- Linux【实操篇】—— 用户管理、linux系统root密码找回方式
- Linux下的的GDB调试技巧三 —— 启动调试与启动程序