linux应用开发-gdb调试

linux应用开发-gdb调试

一 gdb概念

gdb是GNU开发的linux下的调试工具

二 基本使用过程

1 进入调试程序的模式: gcc -g test.c -o test.out

2 开启gdb:            gdb test.out

3 运行程序:           run(r)

4 退出:               quit(q)

5 也可以先进入gdb在执行file装载要调试的文件

三 基本命令

1 设置断点:break(b) 行号 或 break(b)文件名:行号 适用于多个c文件的项目

2 查看断点:info break 或 i d

3 删除断点:delete(d) 断点的编号

4 单步执行不进入子函数:next(n)

5 单步执行进入子函数:step(s)

6 继续执行程序,不单步执行:continue(c)

7 打印变量的值:print num 或 p num 或打印函数值 print fun(1,2)

8 设置变量的值:set var = value

9 查看程序:list(l)

10 装入要调试的可执行文件:file test.c

11 终止正在调试的程序:kill test.c

12 查看变量的类型:whatis num

13 不退出gdb重新产生可执行文件:make

14 不退出gdb执行shell命令:shell

15 退出gdb:quit(q)

时间: 2024-10-12 12:09:54

linux应用开发-gdb调试的相关文章

linux学习之四---gdb调试

在Linux应用程序开发中,最常用的调试器是gdb. 一.启动和退出gdb gdb调试的对象是可执行文件,而不是程序的源代码.如果要使一个可执行文件可以被gdb调试,那么使用编译器gcc编译时需要加入-g选项,-g选项告诉gcc在编译时加入调试信息,这样gdb才可以调试这个被编译的程序. 1.编译test.c源程序 gcc -g test.c -o test ./test test.c中的源码为: #include<stdio.h> int get_sum(int n) { int sum=0

【转】 linux编程之GDB调试

GDB是一套字符界面的程序集,可以用它在linux上调试C和C++程序,它提供了以下的功能: 1 在程序中设置断点,当程序运行到断点处暂停 2 显示变量的值,可以打印或者监视某个变量,将某个变量的值显示出来 3 单步执行 4 运行时修改变量的值 5 跟踪路径 6 线程切换 等等 下面以以下程序为例 当我们要使用GDB进行程序的调试时,在用GCC编译时需要加上-g,如下: GDB之所以能够进行程序的调试也是在于进行编译时的-g选项,当设置了这个选项的时候,GCC会向程序中塞入一下信息,作为GDB调

在Linux下开发和调试STM32

因为最近需要做一些STM32的开发,而我大部分的其他开发都在Linux上,经常在Windows和Linux下切换感觉比较不方便,于是就研究了一下Linux下开发STM32的工具,顺便在这边做下记录. 使用的开发工具 软件平台: Eclipse Luna 下载:https://eclipse.org/downloads/packages/release/luna/sr2 用于安装System Workbench for STM32插件,建议下载Eclipse IDE for C/C++ Devel

Linux下使用GDB调试应用程序示例

GDB概述 ---- GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.所谓"寸有所长,尺有所短"就是这个道理. 一般来说,GDB主要帮忙你完成下面四个方面的功能: 1.启动你的程序,可以按照你的自定义的要求随心所欲的运行程序. 2.可让被调试的程序在你所指定的调置的断点处停住.(断点可以是条件表达式)

linux应用程序设计--GDB调试

GDB简介:GDB是GNU发布的一款功能强大的程序调试工具,GDB主要完成下面三个方面功能: 一.GDB的使用操作 1.启动被调试程序. 2.让被调试的程序在指定的位置停住. 3.当程序被停住时,可以检查程序状态(如变量值). GDB调试实例: 1.在linux下编写test.c程序: 1 #include <stdio.h> 2 3 int main() 4 { 5 int i; 6 long result = 0; 7 for(i=0;i<100;i++) 8 { 9 result

linux基础2——gdb调试器

gdb调试器使用的一般步骤(不断更新完善): 1.编译过程中要用-g参数来添加调试符号——gcc test.c -g: 2.gdb启动可执行文件——gdb a.out: 3.出现gdb符号表示启动成功: 4." l " (小写l)命令可以查看当前代码是否是要执行的代码: 5.断点 b 行号/函数名字——作用是程序执行过程中会自动在断点处暂停,等待指令 info b—— 查看断点列表 d 编号——删除指定编号的断点 6.执行程序 r 回车——程序启动,执行到代码中第一个出现断点处暂停 7

Linux系统下GDB调试

GDB 一.gdb常用命令: 命令 描述 backtrace(或bt) 查看各级函数调用及参数 finish 连续运行到当前函数返回为止,然后停下来等待命令 frame(或f) 帧编号 选择栈帧 info(或i) locals 查看当前栈帧局部变量的值 list(或l) 列出源代码,接着上次的位置往下列,每次列10行 list 行号 列出从第几行开始的源代码 list 函数名 列出某个函数的源代码 next(或n) 执行下一行语句 print(或p) 打印表达式的值,通过表达式可以修改变量的值或

Linux中的gdb调试

一.整体大纲 二.gdb调试 1. 启动gdb start -- 只执行一步    n -- next    s -- step(单步) -- 可以进入到函数体内部    c - continue -- 直接停在断点的位置 2. 查看代码: l -- list    l 10(函数名)    l filename:行号(函数名) 3. 设置断点: 设置当前文件断点:    b -- break    b 10(函数名)    b fileName:行号(函数名)    设置指定文件断点:    

Linux基础(03)gdb调试

1. 安装GDB增强工具 (gef) * GDB的版本大于7.7 * wget -q -O- https://github.com/hugsy/gef/raw/master/scripts/gef.sh | sh * 确保网络连通 并且成功更新ubuntu (更新source.list 使用apt-get update) 2. GDB安装插件(在root权限安装,用户权限使用不了需要在用户权限下安装) git clone https://github.com/gatieme/GdbPlugins