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

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

3天内不再提示

qemu-riscv在scode的gdb调试步骤

冬至子 来源:linshire 作者:linshire 2023-09-28 10:54 次阅读

qemu-gdb的使用

qemu支持gdb调试,只需要在命令中添加 -s -S两个参数即可,在bsp/qemu-riscv下已经有了qemu-dbg.sh,且加入了该参数,

1.jpg

那么我们直接使用该脚本即可,这时候什么也不会显示,因为qemu在等待我们的连接

1.jpg

vscode 使用gdb调试

当然!!!

首先!!!

装插件!!!

1.jpg

然后就该写配置文件了

这配置文件呢,在bsp/qemu-riscv/.vscode/launch.json,没有就自己新建一个,当然,下面的配置这是仿照qemu-arm-a9写的

这里呢,需要手动启动qemu-dbg.sh,在setupCommands配置下似乎不能使用shell去运行sh文件,会使用不了一些命令,所以我将这个参数注释了,然后需要修改一下gdb工具的地址就可以了,也就是编译器路径/bin/下的riscv64-unknown-elf-gdb

{
"version": "0.2.0",
"configurations": [
{
"name": "Debug @Linux",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceRoot}/rtthread.elf",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceRoot}",
"environment": [],
"externalConsole": true,
"miDebuggerServerAddress": "localhost:1234",
"serverLaunchTimeout": 2000,
"customLaunchSetupCommands": [],
// "setupCommands": [
// {
// "text": "shell qemu-dbg.sh
// }
// ],
"MIMode": "gdb",
"miDebuggerPath": "/home/linshire/toolchains/riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-linux-ubuntu14/bin/riscv64-unknown-elf-gdb"
}
]
}

用来那么到现在,我们就完成了几乎所有配置

Run!!!

现在,立刻,马上,开始我们的调试

执行qemu-dbg.sh去启动qemu

1.jpg

打开vscode的debug窗口,干起来

1.jpg

点击左上角的小三角形箭头,就ok了,已经跑起来了

1.jpg

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

    关注

    1

    文章

    125

    浏览量

    21436
  • Shell
    +关注

    关注

    1

    文章

    363

    浏览量

    23287
  • GDB调试
    +关注

    关注

    0

    文章

    24

    浏览量

    1437
  • qemu
    +关注

    关注

    0

    文章

    57

    浏览量

    5330
收藏 人收藏

    评论

    相关推荐

    QEMU+GDB调试ARM程序

    通过GDB调试代码的便利性无需赘言。我们直接以调试meta-hypervisor为示例进行说明。
    的头像 发表于 10-08 09:17 2835次阅读

    使用GDB调试Linux应用程序

    本篇讲解使用GDB调试Linux应用程序,以下以 `hellowld.c` 为例介绍 GDB调试入门。
    发表于 06-27 15:48 447次阅读

    RISC-V 汇编语言程序的调试

    。 另外-bios non代表的意思就是不需要装载qemu默认的bios,模拟的平台上不需要这部分的信息。 启动gdb调试器客户端: risc
    发表于 07-19 16:27

    Windows平台使用VSCode调试 RT-Thread qemu-vexpress-a9 BSP工程

    路径信息。不是每次都需要更新,只有使用了 menuconfig 重新配置了 RT-Thread 或更改了 rtconfig.h 头文件时才需要。步骤四 修改 qemu-dbg.bat 文件开始
    发表于 10-26 15:25

    riscv实现自定义指令并用qemu运行的过程

    install 其中your_path/linux_qemu是自己存在的目录。编译完成后,qemu该目录下。 4.1 添加扩展指令的decodetree 由于riscv指令格
    发表于 08-16 07:27

    嵌入式编程中为什么使用qemuqemu的实际应用

    aarch64编程,采用qemu,运行自己写的裸机代码,能够非常方便的进行各种实验。 进行rtos的开发过程中,经常会采用qemu作为调试工具,进行龙芯、树莓派、
    发表于 08-16 06:44

    制作一个qemu上运行鸿蒙的liteos-m内核

    remote localhost:1234 b main c list 更多gdb相关的调试可以查阅gdb的使用手册。 这样就能够愉快的玩qemu
    发表于 08-16 08:24

    基于QEMU系统模拟器Xilinx/QEMU的运行与调试

    Xilinx基于QEMU系统模拟器Xilinx/QEMU可用于模拟运行Zynq Linux的运行与调试
    的头像 发表于 07-04 07:50 9074次阅读

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

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

    Linux:QEMU调试内核的步骤

    Linux:QEMU调试内核的步骤
    的头像 发表于 06-23 09:03 3114次阅读
    Linux:<b class='flag-5'>QEMU</b><b class='flag-5'>调试</b>内核的<b class='flag-5'>步骤</b>

    riscv32的qemu上体验nuttx的编译和执行过程

    nuttxriscvqemu上运行体验 1.前言 2.环境准备 2.1 安装riscv32交叉编译工具链 2.2 安装qemu 2.3
    的头像 发表于 12-28 10:28 5464次阅读

    riscv-binutils-gdb RISC-V版gdb调试工具

    riscv-binutils-gdb.zip
    发表于 04-25 10:23 0次下载
    <b class='flag-5'>riscv-binutils-gdb</b> RISC-V版<b class='flag-5'>gdb</b><b class='flag-5'>调试</b>工具

    ubuntu中调试GDB

    ubuntu 中调试 gdbtest.c # include # include int main ( int argc, char *argv[]) { unsigned int times
    的头像 发表于 07-27 16:31 1019次阅读
    <b class='flag-5'>在</b>ubuntu中<b class='flag-5'>调试</b><b class='flag-5'>GDB</b>

    如何使用GDB调试工具

    qemu-system-x86的pid为269427,则用下面的命令将进程附加到GDB调试 gdb attach 269427 #gdb a
    的头像 发表于 11-09 17:17 782次阅读
    如何使用<b class='flag-5'>GDB</b><b class='flag-5'>调试</b>工具

    如何使用linux下gdb调试python程序

    如何使用linux下gdb调试python程序  Linux下,可以使用GDB(GNU调试器)来调试
    的头像 发表于 01-31 10:41 2415次阅读