使用gdb调试QEMU模拟的RISC-V平台程序

我们跑一个裸核程序,也就是不带操作系统的程序,然后使用gdb调试该程序。

首先编译目标程序,然后使用QEMU的kernel参数进行加载

bash 复制代码
qemu-system-riscv64 -s -S -bios opensbi.elf -m 4G -smp 4 -kernel my_program.x -nographic

-s 让QEMU在1234端口侦听gdb的调试连接;

-S 表示启动后就挂起,等待 gdb 连接;

-bios 后面跟opensbi固件程序

-m 后面填写模拟内存大小

-smp 后面跟模拟CPU核心数

-kernel 后面跟要调试程序文件路径

-nographic 表示没有图像界面,只有命令行

然后启动gdb调试

bash 复制代码
$ riscv64-unknown-elf-gdb
(gdb) file my_program.x
(gdb) target remote :1234
(gdb) c

target remote 表示连接远程调试,后面跟上远程地址和端口,本机可省略地址

注意:务必要使用riscv编译工具链里面的gdb

相关推荐
yangn010 天前
RISC-V h拓展
risc-v
夏天Aileft10 天前
Qemu搭建RISC-V,运行opensbi+u-boot+img
qemu·risc-v
yangn010 天前
RISC-V 指令集拓展类别
risc-v
itom190012 天前
使用Nuclei IDE调试N900内核Linux启动
linux·risc-v
tianyuanwo12 天前
基于RISC-V架构的服务器OS构建DevOps体系的全方位方案
服务器·架构·risc-v
openKylin13 天前
openKylin适配RISC-V高性能服务器芯片,携手睿思芯科共拓智算新蓝海
risc-v
云道轩18 天前
科技评论:Jim Keller 的“反向”战略:RISC-V 成为中国应对美国芯片封锁的关键武器
科技·risc-v
电子科技圈22 天前
IAR开发平台升级Arm和RISC-V开发工具链,加速现代嵌入式系统开发
arm开发·嵌入式硬件·设计模式·性能优化·软件工程·代码规范·risc-v
IAR Systems22 天前
IAR开发平台升级Arm和RISC-V开发工具链,加速现代嵌入式系统开发
arm开发·risc-v
地衣君24 天前
RISC-V 开发板 + Ubuntu 23.04 部署 open_vins 过程
linux·ubuntu·risc-v