博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
嵌入式,代码调试----GDB扫盲
阅读量:7059 次
发布时间:2019-06-28

本文共 783 字,大约阅读时间需要 2 分钟。

本文为Android嵌入式学习系列笔记 三

GDB, 是GNU项目的调试工具(the GNU Project debugger),G—>GNU,DB--->debuger, gdb允许我们观察被调试程序在运行时的内部状态,也可以查看一个程序crash时状态。

gdb可以做四种操作:

1.运行程序,标识任何可能影响程序运行行为的事物;

2.支持断点调试;

3.检查程序停止时的状态;

4.支持改变变量的值;

gdb下载

通过gdb yourprogram可以启动gdb调试,启动gdb之后可以通过quit或Ctrl - d退出,gdb还可以调试在运行中的进程gdb program 1234 ,其中1234标识进程的id。

在gdb调试过程中,如果你突然想执行摸个shell命令,可以直接键入shell yourcommand,也就是在命令前加上shell,同理也可以执行make xxx

需要注意的是:

源文件编译后切包含调试信息才能够被gdb调试,通常是gcc加上-g参数表示编译时附带调试信息,当然还可以再跟上-o来指定输出文件,也可以不指定采取默认。

 

调试相关参数

run/r 启动gdb

step/s 进入,相当于step into

next/n 下一步, 相当于step over

continue/c 继续执行

break place 在place处加断点,place可以是行号,函数名,多文件调试时,place可以加上文件名用于区别

print x 输出变量x的当前值

info break/ i b 显示所有断点

delete break place 删除断点

 

references:

1GDB homepage.

转载于:https://www.cnblogs.com/avenwu/archive/2013/04/29/3051271.html

你可能感兴趣的文章
加密U盘专业加密芯片方案
查看>>
js比较字符数组元素是否重复
查看>>
码客Online:HTC Zoe是什么功能?
查看>>
windows server 2012 r2 搭建企业文件共享存储
查看>>
我的友情链接
查看>>
[20180606]如何dump数据库里面的汉字.txt
查看>>
C#面向对象(四)虚方法实现多态
查看>>
day3-Nfs
查看>>
函数栈帧(用汇编来剖析)
查看>>
C++中const用法总结(转)
查看>>
给Windows 2003文件夹设置权限
查看>>
Android x86+ADT
查看>>
算法53----换钱的最小次数和方法数【动态规划】
查看>>
Python爬虫1-----urllib模块
查看>>
深入理解Java虚拟机(七)字节码执行引擎(栈帧、动态连接、方法调用)
查看>>
<input>标签中获得鼠标与否的样式变化——js实现
查看>>
Percona XtraDB Cluster 的一些使用限制(PXC 5.7)
查看>>
mysql 源代码目录及安装目录介绍
查看>>
iOS下使用SHA1WithRSA算法加签源码
查看>>
要是喜欢刷题或者练技术,可以看看这些书
查看>>