Hisi 使用GDB调试(直接调试)

环境

宿主机:ubuntu 18.04 x86_64
海思SDK版本:Hi3516EV200_SDK_V1.0.1.2

说明文档

文档路径Hi3516EV200_SDK_V1.0.1.2/osdrv/tools/board/gdb/readme.txt

gdb:http://ftp.gnu.org/gnu/gdb/
ncurses:http://ftp.gnu.org/gnu/ncurses/
usage:
1) Save the downloaded gdb-7.9.1.tar.gz and ncurses-6.0.tar.gz to the tools/board/gdb directory of the osdrv.
2)...

根据说明下载好两个依赖包,源网页访问较慢,可以使用 http://mirrors.neusoft.edu.cn/

编译制作

apt-get install texinfo
cd ~/Hi3516EV200_SDK_V1.0.1.2/osdrv/tools/board/gdb
make all
file gdb-arm-himix100-linux

使用步骤

调试通过nfs把源码、可执行文件、gdb都挂载到开发板上。假设nfs共享路径为~/nfs

cp ~/Hi3516EV200_SDK_V1.0.1.2/osdrv/tools/board/gdb/gdb-arm-himix100-linux ~/nfs

vi main.c #写一个简单的测试代码
arm-himix100-linux-gcc main.c -o main -g #编译DEBUG版本

切换到板端并完成共享文件夹挂载,假设挂载为/root/nfs路径

cd /root/nfs
./gdb-arm-himix100-linux ./main
(gdb) show .                              #设置源码路径
(gdb) l                                   #查看源码
(gdb) break 7                             #打断点
(gdb) info breakpoints                    #查看端点信息
(gdb) r                                   #启动调试
(gdb) c                                   #到下一个断点
(gdb) s                                   #单步进入
(gdb) n                                   #下一步
(gdb) print i                             #打印i的值
(gdb) q                                   #退出
原文地址:https://www.cnblogs.com/llil/p/14488233.html