
GDB调试技巧
文章平均质量分 79
changli_90
这个作者很懒,什么都没留下…
展开
-
__FILE__,__LINE__
注:本文转自蚂蚁跳楼博客园,感谢作者整理 前言: 我们在写程序的时候,总是或多或少会加入一些printf之类的语句用于输出调试信息,但是printf语句有个很不方便的地方就是当我们需要发布程序的时候要一条一条的把这些语句删除,而一旦需要再次调试的时候,这些语句又不得不一条条的加上,这给我们带来了很大的不便,浪费了我们很多的时间,也造成了调试的效率低下。所以,很多人会选择使用宏定义的方式转载 2013-06-13 14:53:27 · 610 阅读 · 0 评论 -
gdb中的信号(signal)相关调试技巧
转自Magic C++论坛 http://www.magicunix.com/index_ch.html http://www.magicunix.com/cgi-bin1/forum_cn/ultimatebb.cgi?ubb=get_topic&f=1&t=000060#000003 引用: -----------------------------------------转载 2013-06-08 17:49:08 · 2159 阅读 · 0 评论 -
用GDB调试程序---转贴,非常全面的调试技巧
用GDB调试程序 GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序 列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行 软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可 以做出一个非常强大的功能。 于是UNIX下的软件比Windows下的软件更能有机地结合,各自发挥各自的长处,组合成 更转载 2013-06-08 17:48:18 · 2446 阅读 · 0 评论 -
GDB调试命令(转)
1 基本命令1.1 启动和退出GDB [root@localhost ~]#gdb test 启动GDB调试test程序 [root@localhost ~]#gdb programe 2146 启动GDB调试进程号为2146的进程 [root@localhost ~]# gdb (gdb) attach转载 2013-06-07 14:58:52 · 684 阅读 · 0 评论 -
gdb多线程/多进程(守护进程)调试
一 调试多进程 1) follow-fork-mode : set follow-fork-mode [parent|child] parent: fork之后继续调试父进程,子进程不受影响。child: fork之后调试子进程,父进程不受影响。 在使用如下方法设置完要调试的程序后: gdb命令行的 –-args 参数gdb环境中 set转载 2013-06-07 13:45:05 · 829 阅读 · 0 评论 -
使用 GDB 调试多进程程序--1
GDB 是 linux 系统上常用的 c/c++ 调试工具,功能十分强大。对于较为复杂的系统,比如多进程系统,如何使用 GDB 调试呢?考虑下面这个三进程系统: 进程 Proc2 是 Proc1 的子进程,Proc3 又是 Proc2 的子进程。如何使用 GDB 调试 proc2 或者 proc3 呢? 实际上,GDB 没有对多进程程序调试提供直接支持。例如,使用GDB调试转载 2013-06-07 10:16:24 · 680 阅读 · 0 评论 -
gdb调试多进程和多线程命令
1. 默认设置下,在调试多进程程序时GDB只会调试主进程。但是GDB(>V7.0)支持多进程的分别以及同时调试,换句话说,GDB可以同时调试多个程序。只需要设置follow-fork-mode(默认值:parent)和detach-on-fork(默认值:on)即可。 follow-fork-mode detach-on-fork 说明 parent转载 2013-06-07 10:23:56 · 827 阅读 · 0 评论 -
使用 GDB 调试多进程程序--3
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 http://bigwhite.blogbus.com/logs/1801699.html 有一段时间没有写技术方面的东西了^_^。众所周知,GDB是Unix/Linux下调试程序的龙头老大,GDB功能强大,我们在平时多使用其一些最基本的功能,而且一般调试的都是单进程的程序。最近一个项目中的问题让我接触如何使用GDB转载 2013-06-07 10:19:50 · 770 阅读 · 0 评论 -
使用 GDB 调试多进程程序--2
程序经常使用fork/exec创建多进程程序。多进程程序有自己独立的地址空间,这是多进程调试首要注意的地方。Gdb功能强大,对调试多线程提供很多支持。 方法1:调试多进程最土的办法:attach pid Attach是调试进程的常用办法,只要有可执行程序以及相应PID,即可工作。当然,为方便调试,可以在进程启动后,设定sleep一段时间,如30s,这样即可有充足的时间来attach。 方法2转载 2013-06-07 10:18:54 · 910 阅读 · 0 评论 -
GDB调试精粹及使用实例
一:列文件清单 1. List (gdb) list line1,line2 二:执行程序 要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符()和外壳通配符(*、?、[、])在内。 如果你使用不带参数的run命令,gdb就再次使用你给予前一条run命令的参数,这是很有用的。 利用set args 命令就可以修改发送转载 2013-06-07 09:24:44 · 570 阅读 · 0 评论