先下载xboot程序,在src下的Makefile文件里修改
CROSS_COMPILE ?=arm-linux-gnueabihf-
PLATFORM ?= arm32-realview
用vs code 打开xboot文件夹,按F5 选择C++(GDB/LLDB),弹出launch.json复制以下内容替换,
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "xboot debug ", // 配置名称,将会在启动配置的下拉菜单中显示
"type": "cppdbg", // 配置类型,这里只能为cppdbg
"request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)
"program": "/home/sea18c/xboot/output/xboot", // 将要进行调试的程序的路径
"args": [],
"stopAtEntry": true, // 设为true时程序将暂停在程序入口处,我一般设置为true
"cwd": "${workspaceFolder}", // 调试程序时的工作目录
"environment": [], // (环境变量?)
"externalConsole": false, // 调试时是否显示控制台窗口,一般设置为true显示控制台,或者false用本软件控制台
"linux": { //特定于 Linux 的启动配置属性。
"MIMode": "gdb", //指示midebugengine将连接到的控制台调试器。允许值为“gdb”“lldb”。
"miDebuggerPath": "/usr/local/arm/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gdb",//调试器的路径。
},
"miDebuggerServerAddress": "localhost:10000",//要连接到的调试器服务器的网络地址(例如:localhost:1234)。
}
]
}
其中
"program" 为调试的路径;
"miDebuggerPath"为调试器的路径;
"miDebuggerServerAddress"为调试器服务器的网络地址。
然后在终端运行./tools/qemu-system/linux/realview-dbg.sh后再按F5即可单步调试。
离线