IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 嵌入式 gdb gdbserver 终极总结 -> 正文阅读

[嵌入式]嵌入式 gdb gdbserver 终极总结

gdb?
IAR MDK VS?
gdb 来一行行的 运行程序、单步执行、跳入/跳出函数、设置断点、查看变量
强大的程序调试工具

?Linux 系统,比如 ubuntu、 ?直接运行 gdb 来调试程序?
?直接在嵌入式系统中运行 gdb 不太现实(性能强大的嵌入式芯片可以这么做)。


嵌入式系统中一般在 PC 端运行 gdb 工具,源码也是在 PC 端,源码对应的可执行文件放到开发板中运行。
我们需要在开发板中运行 gdbserver?

通过网络与 PC 端 的 gdb 进行通信。
要想在 PC 上通过 gdb 调试嵌入式程序,那么需要两个东西:gdb 和gdbserver,其中 gdb 是运行在 PC 上的,gdbserver 需要我们移植到开发板上。

一般交叉编译已经自带了 gdb 和 gdbserver,因此可以不用移植,直接使用交叉编译器自带的即可。
果交叉编译器自带了 gdb 和 gdbserver 的话只需要将 gdbserver 拷贝到开发板根文件系统的/bin 目录下

gdb 官网上获取源码

首先编译 gdb,gdb 是运行在 PC 端的程序,gdb 编译的时候需要进行配置

植 gdbserver,gdbserver 是在开发板上运行的,因此要交叉编译。

gdbserver 软件 ?/usr/bin 目录下 gdbserver –version //查看版本号

arm-linux-gnueabihf-gcc gdbtest.c -o gdbtest -g //编译测试程序,注意-g 选项
完成以后将得到的 gdbtest 可执行文件发送到开发板中。?

gdbserver 192.168.1.253:2001 gdbtest // 启动开发板上的 gdbserver

192.168.1.253 为调试机的 IP 地址,也就是 ubuntu 的 IP 地址,2001 是端口号,
可以任意给一个端口号,gdbtest 是要调试的可执行文件。

上位机
arm-linux-gdb gdbtest
target remote 192.168.1.251:2001 //连接到开发板上

l l出所有程序源码
b b main 或 break main ?第 11 行设置断点
c c 命令用于运行到断点处,输入 c 命令程序就会运行,直到下一个断点处
s s 命令(step)是单步运行执行,此函数会进入到函数里面。
n n 命令(next)也是单步运行,但是 n 命令不会进入到函数里面
p 命令(print)用于打印某个变量值。?
q 命令(quit)用于退出调试,开发板上的 gdbserver 也会停止。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-08-14 14:14:35  更:2021-08-14 14:16:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 20:55:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码