0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用gdbserver对目标开发板上的程序进行远程调试

麦辣鸡腿堡 来源:嵌入式Linux充电站 作者:Vincent 2023-10-04 15:27 次阅读

本篇讲解如何使用gdbserver对目标开发板上的程序进行远程调试。

安装 GDBSERVER

首先在开发板上安装 gdbserver:

apt install gdbserver

gdbserver 用法

gdbserver用法描述:

Usage:  gdbserver [OPTIONS] COMM PROG [ARGS ...]
        gdbserver [OPTIONS] --attach COMM PID
        gdbserver [OPTIONS] --multi COMM

COMM may either be a tty device (for serial debugging),
HOST:PORT to listen for a TCP connection, or '-' or 'stdio' to use
stdin/stdout of gdbserver.
PROG is the executable program.  ARGS are arguments passed to inferior.
PID is the process ID to attach to, when --attach is specified.

Operating modes:

  --attach              Attach to running process PID.
  --multi               Start server without a specific program, and
                        only quit when explicitly commanded.
  --once                Exit after the first connection has closed.
  --help                Print this message and then exit.
  --version             Display version information and exit.

使用gdbserver很简单,主要就是先在开发板上开启gdbserver,然后宿主机运行gdb远程连接到gdbserver

具体步骤

一:在目标开发板上启动 gdbserver 服务

要进行gdb调试,首先要在目标开发板上启动gdbserver服务。在gdbserver所在目录下输入命令:

gdbserver :12345 helloworld

此时gdbserver监听端口12345,并等待客户端连接。这里的 端口号是自己指定的,helloworld是你要调试的程序

二:在宿主机上运行 GDB:

宿主机通常就是在你的Linux虚拟机上,然后找到开发板对应工具链下的gdb,然后运行:

riscv64-linux-gnu-gdb helloworld

(gdb) target remote 192.168.1.4:12345

192.168.1.4是开发板的ip地址,12345是开发板启动gdbserver服务时指定的端口号。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11131

    浏览量

    208011
  • 开发板
    +关注

    关注

    25

    文章

    4789

    浏览量

    96277
  • GDBServer
    +关注

    关注

    0

    文章

    4

    浏览量

    2233
收藏 人收藏

    评论

    相关推荐

    【昉·星光 2(VisionFive 2)RISC-V单板计算机】愉快的GDB调试

    前面我们体验了直接在C开发,我们也可以直接GDB调试,避免了
    的头像 发表于 07-21 09:06 917次阅读
    【昉·星光 2(VisionFive 2)RISC-V单板计算机】<b class='flag-5'>板</b><b class='flag-5'>上</b>愉快的GDB<b class='flag-5'>调试</b>

    飞凌嵌入式ElfBoard ELF 1板卡-在ELF 1开发环境中使用QT Creator进行远程调试

    ”,选择“开始调试”,单击“Attach to Running Debug Server”:按下图进行配置:(5)调试至此,大家就可以在代码中进行设置断点、查看变量、单步执行等操作啦!
    发表于 04-30 09:35

    嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-在ELF 1开发环境中使用QT Creator进行远程调试

    下图进行配置: (5)调试 至此,大家就可以在代码中进行设置断点、查看变量、单步执行等操作啦!这种便利的远程调试功能使得
    发表于 04-30 09:45

    【Aworks280试用体验】Eclipse与Aworks280的远程调试

    本帖最后由 1450716314 于 2015-12-10 18:16 编辑 前天进行过系统与开发板的基本通信后这次说一Eclipse与开发板远程
    发表于 12-10 17:06

    迅为i.MX6ULL开发板移植Gdb+Gdbserver调试

    怎么在arm调试应用代码的方法。首先,了解下基本的思路:采用这种方式进行远程调试目标系统
    发表于 05-31 13:47

    使用Qt Creator提供的远程部署调试的方法

    开发环境后,使用Qt Creator加载交叉编译好的的Qt SDK包,一般完成编译后生成可执行程序然后拷贝到开发板文件系统内执行,若需要调试还得在
    发表于 11-05 07:20

    使用gdb远程调试嵌入式主板程序分享

    目标之间能正常通信。0.2. 文件确认先确认是否存在下列两个文件:gdbserver目标
    发表于 12-24 06:04

    基于STM32野火开发板的源程序

    文档内容包含了STM32野火开发板的源程序,MP3_+_FATFS_+_SD卡的程序程序已在板子上
    发表于 09-01 14:46 128次下载

    GDB RSP协议与USB通信进行调试信息交互的开发与实现方法

    调试嵌入式程序通常采用一种称为交叉调试调试技术来调试已下载到嵌入式开发板中的
    的头像 发表于 12-04 08:20 3735次阅读
    GDB RSP协议与USB通信<b class='flag-5'>进行</b><b class='flag-5'>调试</b>信息交互的<b class='flag-5'>开发</b>与实现方法

    嵌入式Linux系统的GDB远程调试的实现

    mount的方式都可以。只要保证gdbserver能在开发板运行就行。 下 面就可以用gdb+gdbserver调试我们
    发表于 04-02 14:38 374次阅读

    Linux应用的GDB调试的原理及过程分析

    GDB调试是应用程序开发板运行,然后在PC机上对开发板上得应用程序
    发表于 03-05 09:44 3345次阅读
    Linux应用的GDB<b class='flag-5'>调试</b>的原理及过程分析

    使用Qt Creator远程调试部署应用到嵌入式linux开发板

    开发环境后,使用Qt Creator加载交叉编译好的的Qt SDK包,一般完成编译后生成可执行程序然后拷贝到开发板文件系统内执行,若需要调试还得在
    发表于 11-01 17:38 23次下载
    使用Qt Creator<b class='flag-5'>远程</b><b class='flag-5'>调试</b>部署应用到嵌入式linux<b class='flag-5'>开发板</b>

    在AI爱克斯开发板用OpenVINO™加速YOLOv8目标检测模型

    《在 AI 爱克斯开发板用 OpenVINO 加速 YOLOv8 分类模型》介绍了在 AI 爱克斯开发板使用 OpenVINO 开发套件
    的头像 发表于 05-12 09:08 1162次阅读
    在AI爱克斯<b class='flag-5'>开发板</b><b class='flag-5'>上</b>用OpenVINO™加速YOLOv8<b class='flag-5'>目标</b>检测模型

    AI爱克斯开发板使用OpenVINO加速YOLOv8目标检测模型

    《在AI爱克斯开发板用OpenVINO加速YOLOv8分类模型》介绍了在AI爱克斯开发板使用OpenVINO 开发套件部署并测评YOLO
    的头像 发表于 05-26 11:03 1094次阅读
    AI爱克斯<b class='flag-5'>开发板</b><b class='flag-5'>上</b>使用OpenVINO加速YOLOv8<b class='flag-5'>目标</b>检测模型

    RK3568开发板借助 U 盘或 TF 卡拷贝程序开发板

    RK3568开发板借助 U 盘或 TF 卡拷贝程序开发板
    的头像 发表于 05-20 18:01 1068次阅读
    RK3568<b class='flag-5'>开发板</b>借助 U 盘或 TF 卡拷贝<b class='flag-5'>程序</b>到<b class='flag-5'>开发板</b><b class='flag-5'>上</b>