GDB调试实用命令】的更多相关文章

个人感觉从windows平台转到linux平台一个不适应的地方就是调试器的使用.因为windows下调试器基本上都依赖快捷键和图像界面来完成操作,就算是windbg这种伪命令行的工具,命令也很简单比较好记. 相比之下GDB属于很复杂的了,网上找到的一些GDB的文章列出的往往都是一些没什么卵用的命令,所以开个帖子记录下常用的命令. 插件安装 1.gdb-peda 这是一个调试时必不可少的神器,github地址在:https://github.com/longld/peda ,它的安装两条简单命令即…
gdb 调试常用命令 gcc -g mian.c -o main.out -o (定制生成的可执行文件的名称,缺省时为a.out) -g 使gdb可调试,在编译的时候,产生调试信息 gdb main.out (进入gdb调试环境),调试可执行文件main.out   list(l) 显示当前行之后的10行代码(list后面可接行号和函数名,回车继续向下显示) 回车 直接回车,重复上一次执行的命令 start(s) 开始执行程序,并停在main函数的第一条语句处 next(n) 执行下一条语句 s…
使用 gdb 命令提供的 --args 选项可以调试需要命令行参数的程序,如下: gdb --args a.out arg1 arg2 arg3…
1. gdb查看指定地址的内存地址的值:examine 简写 x-----使用gdb> help x 来查看使用方式     x/ (n,f,u为可选参数)n: 需要显示的内存单元个数,也就是从当前地址向后显示几个内存单元的内容,一个内存单元的大小由后面的u定义f:显示格式               x(hex) 按十六进制格式显示变量.               d(decimal) 按十进制格式显示变量.               u(unsigned decimal) 按十进制格式显…
示例代码 1 #include <iostream> 2 using namespace std; 3 4 void Print() 5 { 6 cout<<"helloworld"<<endl; 7 } 8 9 class TestDebug 10 { 11 public: 12 TestDebug() 13 { 14 cout<<"TestDebug"<<endl; 15 int temp=0; 16…
获取设备IMEI: adb shell dumpsys iphonesubinfo 文件在设备和PC端的操作:adb push [PC端源文件路径] [设备的目的文件路径] 例如:adb push C:\Users\pesson\Desktop\code /mnt/sdcard/wjj/ adb pull [设备中源文件路径] [PC端目的文件路径] 例如:adb pull /mnt/sdcard/wjj/code C:\Users\pesson\Desktop\wjj 操作设备文件目录:adb…
转:使用gdb调试多线程程序总结 一直对GDB多线程调试接触不多,最近因为工作有了一些接触,简单作点记录吧. 先介绍一下GDB多线程调试的基本命令. info threads 显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID. 前面有*的是当前调试的线程. thread ID 切换当前调试的线程为指定ID的线程. break thread_test.c:123 thread all在所有线程中相应的行上设置断点thread apply ID1 ID…
对于gdb是什么,这里就不多说了,只要是程序员一般都听说过,像java开发会用到集成开发工具eclipse,里面调试起来非常方便,全是可视化的,但是如果在linux下编写的c程序,用可视化的调试就没这么方便了,这时就得用gdb了,当程序比较大时,在开发肯定会出现很多bug,对于怎么调试这些bug就显得非常重要了,所以下面来详细的学习这一调试工具,进入正题: gdb功能:   下面来调试一个简单例子来对gdb有个感性的认识,之后再一一来学习: 先来编译运行一下该程序: [注意]:用gdb调试时,需…
  1.生成core dump文件的方法: $  ulimit -c //查看是否为0 如果为0 $   ulimit -c unlimited 这样在程序崩溃以后会在当前目录生成一个core.xxxx的文件 2.调试core dump文件 生成了core.xxx文件以后 $  gdb ./应用程序  core.xxxx 就会恢复现场到你的程序崩溃的那一刻 (gdb)bt          //这个命令会列出程序崩溃时的堆栈信息,一层一层会有标号  #0  #1  #2 ....... 如果你要…
1.生成core dump文件的方法: $  ulimit -c //查看是否为0 如果为0 $   ulimit -c unlimited 这样在程序崩溃以后会在当前目录生成一个core.xxxx的文件 2.调试core dump文件 生成了core.xxx文件以后 $  gdb ./应用程序  core.xxxx 就会恢复现场到你的程序崩溃的那一刻 (gdb)bt          //这个命令会列出程序崩溃时的堆栈信息,一层一层会有标号  #0  #1  #2 ....... 如果你要查看…