gdb
cws1214
这个作者很懒,什么都没留下…
展开
-
gdb调试stl相关
第一点经验:在linux下用gdb调试C++程序时,由其是调试STL(或QT 、或ACE)的程序时,千万要记住不能使用 -O2 这个选项。因为如果在编译时加了该选项就是使得gdb在单步调试时,在STL间跳来跳去。使程序员无法进行有效的调试工作。第二点经验:有时我们需要将STL中的一些容器里的值打印出来,但通常的gdb 中的 print无法直接得到我们想要的结果。所以我们需要转载 2013-01-14 14:04:43 · 1218 阅读 · 0 评论 -
gdb调试多线程 子进程
先介绍一下GDB多线程调试的基本命令。 info threads 显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID。 前面有*的是当前调试的线程。thread ID 切换当前调试的线程为指定ID的线程。 break thread_test.c:123 thread all 在所有线程中相应的行上设置断点thread apply I转载 2013-08-16 17:54:29 · 859 阅读 · 0 评论 -
ptrace 不允许操作解决方法
sudo gedit /etc/sysctl.d/10-ptrace.confkernel.yama.ptrace_scope = 0reboot转载 2013-09-22 09:57:24 · 10369 阅读 · 0 评论 -
定位程序Crash常用工具和方法
任何程序正确则只有一种结果,但是错误却有千万种,而众多的错误有些是可容忍,有些则是致命的,如除零错误、堆栈溢出、内存越界等导致程序Crash。由于很多错误并不是发生在开发工作者调试阶段,而是在用户或测试工作者使用阶段;这就需要相关代码维护工作者对于程序异常捕获收集现场信息。 当收集相关信息后,如何定位这些错误是的极为讲究的过程,工具和方法使用得当则可事半功倍,反之事倍功半,所谓工欲善其事,必转载 2013-10-09 10:23:24 · 1399 阅读 · 0 评论 -
gdb optimized out错误解决
when linux gdb debug, print a variable, such as i, by command p i; The gdb output value optimized out. The solution for the problem is off the compile optimation option -Ox, x note转载 2013-09-25 17:34:18 · 18775 阅读 · 0 评论