ubuntu中gdb调试工具的使用

首先有一段.c代码

1.可调试gcc编译:gcc -g -o xxx xxx.c

2.启动gdb调试

gdb xxx

3.在main函数处设置断点

break main

4.运行程序

run

5.其他调试命令

list(l)查看程序

break(b) 函数名:在某函数入口处添加断点

break  行号:在指定行添加断点

break  文件名:行号   在指定文件的指定行添加断点

info  break  查看所有设置的断点

delete 断点编号  删除断点编号的断点

--------------------------------------------------

next(n)  :单步运行程序(但不进入子函数)

step(s)  :单步运行程序(进入子函数)

continue(c):继续运行程序

print(p)变量名: 查看指定变量值

set var=value :设置变量的值

quit(q):退出gdb

时间: 2024-12-12 09:24:33

ubuntu中gdb调试工具的使用的相关文章

gcc中gdb调试工具的使用

首先,利用gcc编译源文件时添加 -g 选项生成可调试的文件,例如,要调试test.c文件,输入命令 $ gcc -g test.c -o test_gdb 生成test_gdb文件. 然后,运行命令 $ gdb test_gdb 可进入调试模式. 在调试模式中,(gdb) 表明此时可输入命令,常用的gdb调试命令如下: GDB常用命令 格式 含义 简写 break Break [行号或函数名] 在程序中设置一个断点 b cd Cd 目录 改变当前的工作目录   continue Continu

【Linux】GDB调试工具

GDB调试工具 Linux中包含一个很强大的调试工具GDB(GNU Debuger),可以用它来调试C和C++程序. 一. GDB的主要功能有: 设置断点,当程序运行到断点处暂停 显示变量的值,可以打印或者监视某个变量,将变量的值显示出来 单步执行,GDB允许用户单步执行程序,可以跟踪进入函数和从函数中退出 运行时修改变量的值,GDB允许在调试状态下修改变量的值,此功能在测试程序的时候特别有用 路径跟踪,GDB可以将代码的路径打印出来,方便用户跟踪代码 线程切换,在调试多线程的时候,此种功能是必

Android系统开发(2)——GDB调试工具

调试的过程 我们在eclipse中来看一下一般调试的过程: 1.debug模式编译 2.打上断点 3.运行调试 4.单步调试 step into:跳到函数体内部 step over:不跳到函数体内 step return:运行完当前函数 5.继续运行 continue 6.打印和监控值 GDB调试 先写一段C++的代码,代码内容如下: 使用debug模式编译: 进入Debug调试模式: 1.打断点,打断点的方式如下(GDB中的命令可以使用首字母来替代,比如break和b的作用相同) break 

GDB调试工具的实践

GDB是GNU Debuger的简称,是GNU发布的一款unix下应用程序调试工具.它被广泛使用在各个产家各种应用中.GDB和所有常用的调试工具一样,它的主要功能有:监视变量的值.设置断点及单步执行. 注意,在源程序编译时,要使用gcc -g 或 cc -g 或 g++ -g将源程序编译成可执行文件,然后才能使用gdb进行调试.只有这样,生成的可执行文件才包含调试信息. 参考别人的写一个简单的c程序,在linux下使用gcc编译成可执行文件,然后使用gdb进行调试. 程序源代码如下 #inclu

使用 Strace 和 GDB 调试工具的乐趣

编写 UNIX® 系统程序充满乐趣,并且具有教育意义.使用 UNIX strace 工具和 GDB(GNU 项目调试工具),您可以真正地深入研究系统的功能,并了解组成这些功能的各种各样的程序.同时使用这两种工具,能够在查看 UNIX 计算机底层信息 的时候,给您带来更好的体验. UNIX 家族总是为用户提供了丰富的工具.UNIX 是一个工具财宝箱,有了这些工具,您不仅可以完成具有创造性的工作,还可以在深入研究该操作系统的同时得到教育和娱乐.strace(用来跟踪任何程序的系统调用)和 GDB 调

GDB调试工具总结

程序调试的基本思想是“分析现象->假设错误原因->产生新的现象去验证假设”这样一个循环过程,根据现象如何假设错误原因,以及如何设计新的现象去验证假设,需要非常严密的分析和思考.程序中除了一目了然的Bug之外都需要一定的调试手段来分析到底错在哪,到目前为止自己使用过的调试手段只有一种: 根据程序执行时的出错现象假设错误原因,然后在代码中适当的位置插入printf(驱动使用printk函数),执行程序并分析打印结果,如果结果和心里预期的一样,就基本上证明了自己假设的错误原因,就可以动手修正Bug了

更新Ubuntu中chrome的方法

如果Ubuntu中chrome浏览器版本过低,在使用自动化测试工具selenium的时候会出现各种问题导致无法启动,最快捷的方法就是升级系统中的chrome浏览器 升级的命令如下: wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo dpkg -i./google-chrome-stable_current_amd64.deb 升级完就可以快乐的使用selenium去爬取数据,或者

在Ubuntu中安装Docker

前言 网上已经有很多介绍Docker安装的文章,自己的安装过程记录一下,为了博客文章结构的连贯性,为写下一篇R和Docker的相遇做为环境基础,同时也给自己一个备忘. 目录 Docker是什么? 在Linux Ubuntu中安装Docker Docker镜像仓库 制作自己的Docker镜像 上传Docker镜像到公共仓库 完整文章:http://blog.fens.me/linux-docker-install/

Ubuntu中python环境下import requests错误的解决(学习过程问题记录)

python中导入模块:import requests提示错误,错误信息描述如下: >>>import requests Traceback (most recent last):   File "<stdin>", line 1, in <module> ImportError:No module named requests 意思就是说没有名为requests的模块,解决方案是在命令行下使用 pip install requests 来进行