Visual Studio 2022 手动搭建 PC 端 lvgl 的调试环境

说明

  • 想手动搭建一个 PC 端 lvgl 的调试环境,基于 Visual Studio 2022

  • LVGL 有个官方的仓库:https://github.com/lvgl/lv_port_pc_visual_studio.git,基本功能已经搭建好了

  • 但是 LVGL 官方的仓库 lv_port_pc_visual_studio 看起来貌似有点复杂,所以想手动搭建一下,了解整个搭建过程

环境准备

  • 社区版版本的 Visual Studio 2022 或者其他 Visual Studio 版本

  • 下载 LVGL lv_port_pc_visual_studio 仓库,作为标准,其实主要是获取 lv_conf.h 、lvgl 初始化与 windows 窗口初始化等,并获取 Visual Studio 编译 LVGL 的一些配置项

  • 使用 git clone lv_port_pc_visual_studio 仓库

c 复制代码
git clone https://github.com/lvgl/lv_port_pc_visual_studio.git --recurse-submodules

工程搭建

第一步:创建工程项目

  • 打开 Visual Studio 2022,【创建新项目】,新建一个 C++ 的空的工程 【空项目】,比如 lvgl_sim_vs


第二步:下载 lvgl

第三步:新建 simulator 目录

  • 在刚刚创建的 Visual Studio 2022 工程目录下,新建一个 simulator 的目录,用于存放 lv_conf.h 、lvgl 初始化与 windows 窗口初始化等文件。

  • 打开 lvgl 的官方的 lv_port_pc_visual_studio 仓库,把

lv_port_pc_visual_studio\LvglWindowsSimulator\lv_conf.h 复制为 lvgl_sim_vs\simulator\lv_conf.h

lv_port_pc_visual_studio\LvglWindowsSimulator\LvglWindowsSimulator.cpp 复制为 lvgl_sim_vs\simulator\simulator.c

第四步:整理工程文件

  • 新建的 Visual Studio 2022 工程 lvgl_sim_vs,在【解决方案资源管理器】中,点击 【显示所有文件】的按钮,然后发现 lvgl 与 simulator 目录已经在工程中显示了。
  • 然后 【解决方案资源管理器】中选择 simulator 目录, 右键点击 【包括在项目中】,添加项目文件到项目中
  • 同上,【解决方案资源管理器】中选择 lvgl 目录下的 src 目录, 右键点击 【包括在项目中】,把 lvglsrc 目录添加到工程中

第五步:设置工程

  • 设置工程的头文件路径:【解决方案资源管理器】中选择工程 lvgl_sim_vs ,右键【属性】,在 【C/C++】的 【附加包含目录】,添加工程的头文件目录 simulator. 目录,注意 . 表示工程的根目录

第六步:工程编译

  • 现在编译工程:【生成解决方案】,会发现有几个编译错误

  • 注释或者移除 lvgl_sim_vs\simulator\simulator.c 中的 #include <LvglWindowsIconResource.h>,也就是暂时不使用程序图标 icon

  • 注释或者移除 lvgl_sim_vs\simulator\simulator.c 如下的图标设置代码

c 复制代码
'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
  • 【解决方法】 增加 【宏定义】 _CRT_SECURE_NO_WARNINGS 设置,【解决方案资源管理器】中选择工程 lvgl_sim_vs ,右键【属性】,在 【C/C++】 -> 【预处理器】 -> 【预处理器定义】 中,增加 _CRT_SECURE_NO_WARNINGS
  • 此时编译后,提示找不到 lvgl_sim_vs\simulator\simulator.c 中的 lv_demo_widgets,这是个 lvgl 内置的示例,可以复制 lvgl 中一个简单用例来验证即可。
c 复制代码
无法解析的外部符号 lv_demo_widgets,函数 main 中引用了该符号
  • 【解决方法】复制 lvgl_sim_vs\lvgl\examples\get_started\lv_example_get_started_1.c 中的函数 lv_example_get_started_1lvgl_sim_vs\simulator\simulator.c,然后把 lvgl_sim_vs\simulator\simulator.clv_demo_widgets 改为 lv_example_get_started_1


经过以上的步骤,Visual Studio 2022 手动搭建 PC 端 lvgl 的调试环境,初步搭建完成了。

调试与运行

  • 点击 Visual Studio 2022 调试按钮,即可运行 lvgl 示例

小结

  • 前期可以验证 lvgl 自带的一些示例,也就是把 lvgl\examples 加入到工程中,在 lvgl_sim_vs\simulator\simulator.c 中调用相关示例的 api 即可。
相关推荐
追逐时光者11 小时前
2026年全面且实用的 Visual Studio 插件推荐,开发效率提升利器!
后端·visual studio
聪明不喝牛奶13 小时前
【已完成】Visual studio2022打包安装成exe程序
ide·visual studio
零号全栈寒江独钓18 小时前
visual studio编译wxWidgets
c++·visual studio
自然常数e1 天前
文件 操作
c语言·数据结构·visual studio
无限进步_1 天前
C++日期类设计与实现详解:一个完整的Date类
c语言·开发语言·c++·git·后端·github·visual studio
无限进步_1 天前
深入解析string:从设计思想到完整实现
开发语言·c++·ide·windows·git·github·visual studio
解道Jdon1 天前
VSCode 2026年2月更新:技能市场、CLI、钩子支持
ide·windows·git·svn·eclipse·github·visual studio
荔枝吻1 天前
【保姆级喂饭教程】Visual Studio 2026 中创建基于 c# 的 WinForms 入门教程
ide·c#·visual studio
贪嘴1 天前
Visual Studio 2026 不支持 .net upgrade assistant 升级助手 安装失败怎么办
ide·.net·visual studio
Mikowoo0071 天前
Visual Studio 2022 下CUDA程序开发
c++·visual studio