LVGL 远程调试
使用 gdbserver 和 vscode 远程调试 LVGL 程序
工具
- vscode: 虚拟机编辑器
- arm-linux-gnueabihf-gdb: 交叉编译链工具
- gdbserver:gdb 服务工具(板载)
vscode 打开一个 LVGL 项目
通过环境搭建文档获取一个 LVGL 项目,项目目录
yztiot@ubuntu:~/t153/pro/t153_demo$ ls -l
总用量 100
drwxrwxr-x 2 yztiot yztiot 4096 9月 22 17:08 bin
drwxrwxr-x 2 yztiot yztiot 4096 6月 12 2023 common
drwxrwxr-x 2 yztiot yztiot 4096 1月 20 2026 inc
drwxrwxr-x 2 yztiot yztiot 4096 6月 15 14:42 lib
-rwxrwxr-x 1 yztiot yztiot 1081 6月 12 2023 LICENSE
-rwxrwxr-x 1 yztiot yztiot 22810 9月 22 17:08 lv_conf.h
-rw-rw-r-- 1 yztiot yztiot 1270 6月 12 2023 lv_demo_conf.h
drwxrwxr-x 10 yztiot yztiot 4096 11月 10 2025 lv_drivers
-rw-rw-r-- 1 yztiot yztiot 12618 9月 20 16:24 lv_drv_conf.h
drwxrwxr-x 7 yztiot yztiot 4096 6月 12 2023 lv_examples
drwxrwxr-x 9 yztiot yztiot 4096 12月 11 2025 lvgl
drwxrwxr-x 5 yztiot yztiot 4096 11月 10 2025 lv_node
-rw-rw-r-- 1 yztiot yztiot 3219 9月 22 17:09 main.c
-rwxrwxr-x 1 yztiot yztiot 3667 9月 22 16:20 Makefile
drwxrwxr-x 5 yztiot yztiot 4096 9月 22 17:08 obj
-rwxrwxr-x 1 yztiot yztiot 618 9月 22 14:33 README.md
-rwxrwxr-x 1 yztiot yztiot 2860 1月 20 2026 ui_app.h
yztiot@ubuntu:~/t153/pro/t153_demo$在虚拟机右键项目文件夹,点击使用其他程序打开(A),使用 vscode 打开
配置 launch.json
在 .vscode 目录新建或修改 launch.json 文件,内容:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/bin/demossd", //生成的程序路径
"args": [],
"stopAtEntry": false,
"cwd": "${fileDirname}",
"miDebuggerPath": "/home/yztiot/t153/host/bin/arm-linux-gnueabihf-gdb", //把这个改成系统GDB的路径
"miDebuggerServerAddress": "192.168.0.189:1234", //把这个改成你的板子的IP地址
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "将反汇编风格设置为 Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
]
}
]
}
注意修改开发板目标 ip 地址
启动 gdbserver
开发板连接与虚拟机同一网段的网络后,编译 LVGL 项目为 demossd 并通过 scp 或者其他方式部署到开发板,在终端输入
gdbserver 192.168.0.91:1234 ./demossd然后再 vscode 打开 launch.json,按 F5 开启调试


常见问题
1. 无法设置断点
1. 检查Makefile文件的”@$(CC) $(CFLAGS) -c $< -o $@ -g”是否少了-g
2. 检查 # arm-linux-gnueabihf-strip ./bin/demossd 是否为注释状态2. 报错 Configured debug type ‘cppdbg’ is not supported.
安装 C/C++ 扩展插件作者:陈柏林 创建时间:2026-11-04 17:50
最后编辑:陈柏林 更新时间:2026-11-05 14:56
最后编辑:陈柏林 更新时间:2026-11-05 14:56