现在位置: 首页 > GDB
2016-07-20 23:05 工业·编程 ⁄ 共 2912字 暂无评论
    在调试程序的过程中,可以自由地查看相关的源代码(如果有源代码的话)是一项最基本的特性。       一些IDE在这方面做得相当好,GDB当然也提供了这项特性,虽然不如IDE直观,但在一定程度上要比IDE更加灵活和快捷。       GDB之所以能够知道对应的源代码,是因为调试版的可执行程序中记录了源代码的位置;因为源代码的位置在编译之后可能会移动到其它地...
阅读全文
2016-07-17 22:47 工业·编程 ⁄ 共 1481字 暂无评论
一、gdb简介 gdb:GNU debugger UNIX及UNIX-like下一个强大的命令行的调试工具 gdb调试的整体架构如下图所示: 可以发现gdb调试不管是本地调试还是远程调试,都是基于ptrace系统调用来实现的 二、ptrace ptrace系统调用的原型: long ptrace(enum __ptrace_request request, pid_t pid,void *addr,void *data); ptrace系统调用提供了一种方法,让父进程可以观察和控制其它进程的执行,检查和改变其核心映像及寄存...
阅读全文
2016-07-14 22:33 工业·编程 ⁄ 共 5658字 暂无评论
在对嵌入式进行调试之前,必须要生成调试器。经典地,Linux平台下的调试器为gdb。 1、下载gdb: 下载地址为: http://www.gnu.org/software/gdb/download/ 按照一般的想法,最新版本越好,因此下载7.2这个版本。当然,凡事无绝对。 我们以gdb-7.2.tar.bz2 这个文件为例。 2、解压缩: $ tar jxvf gdb-7.2.tar.bz2 注:小技巧:Linux下一般压缩文件后缀为.tar.bz2和.tar.gz,它们解压...
阅读全文
2016-07-03 06:42 工业·编程 ⁄ 共 644字 暂无评论
GDB是一套字符界面的程序集,可以用它在linux上调试C和C++程序,它提供了以下的功能: 1 在程序中设置断点,当程序运行到断点处暂停 2 显示变量的值,可以打印或者监视某个变量,将某个变量的值显示出来 3 单步执行 4 运行时修改变量的值 5 跟踪路径 6 线程切换 等等   下面以以下程序为例 当我们要使用GDB进行程序的调试时,在用GCC编译时需要加上-g,如下: GDB之所以能够进行程序的调试也是在于进行编译时的-g选项,当...
阅读全文
2015-12-20 21:33 工业·编程 ⁄ 共 1209字 暂无评论
最近使用GDB比较多,发现除了最常用的run、break、continue、next等命令的基本用法外,还有一些非常有用的命令和用法,能让你更加得心应手地使用GDB,在这里做了一下简单的总结。 1. run 当GDB的程序需要带参数运行时,除了使用set args外,还可以直接在run(r)后面带上参数,如下面两种方式是等价的:     2. set follow-fork-mode 有时候会发现GDB无法跟踪到设置的断点,原因可能是需要调试的进程是daemon进程或者fo...
阅读全文