windows clion lvgl 使用 sdl2

环境说明

  • windows (win10)
  • clion (CLion 2025.2.4)
  • LVGL (2025-12-20 master 最新)
  • SDL2 lib (release-2.32.8 手动编译)
  • x86_64-w64-mingw32 编译工具链

编译 SDL2 lib

配置 clion cmake

  • SDL2 lib 以静态库的方式链接到工程

  • LVGL 的配置文件 lv_conf.h 配置 #define LV_USE_SDL 1,也就是使能 LV_USE_SDL

  • 工程 CMakeLists.txt 中增加如下配置

c 复制代码
link_directories(libs/sdl/lib)
include_directories(libs/sdl/include)

target_link_libraries(lvgl-sim
        libSDL2.a
        imm32
        winmm
        SetupAPI
        Version)

windows SDL 驱动

c 复制代码
static lv_display_t *display;
static lv_indev_t *mouse;
static lv_indev_t *mouse_wheel;
static lv_indev_t *keyboard;

int hal_init_sdl(void)
{
    display = lv_sdl_window_create(LCD_WIDTH, LCD_HEIGHT);
    if (!display)
    {
        return -1;
    }
    mouse = lv_sdl_mouse_create();
    if (!mouse)
    {
        return -1;
    }
    mouse_wheel = lv_sdl_mousewheel_create();
    if (!mouse_wheel)
    {
        return -1;
    }
    keyboard = lv_sdl_keyboard_create();
    if (!keyboard)
    {
        return -1;
    }
    return 0;
}

显示效果

  • 可以正常的显示

说明

  • 其实在 windows 端,显示可以不使用 SDL2,而是使用 LVGL 的 windows 的驱动,比如 lv_windows_get_display_window_handle
相关推荐
2501_941982052 小时前
企业微信二次开发:私域数据基石——三大核心基础能力接口实战
windows·架构·bootstrap·企业微信
美丽的欣情11 小时前
RK3588 Debian 交叉编译环境搭建(Windows + VMware Debian + CMake)
运维·windows·debian
勤劳打代码12 小时前
Flutter 架构指南 —— windows 平台安装拆解
windows·架构
aramae15 小时前
C++11:现代C++的里程碑
c语言·开发语言·c++·windows·git·后端
执行x16 小时前
wsl2安装+桥接模式+固定IP
linux·windows·ubuntu
做萤石二次开发的哈哈17 小时前
如何接入萤石开放平台 ERTC Windows SDK?
windows·音视频·萤石开放平台
橙臣程17 小时前
在 Windows 中使用 WSL2 搭建 Ubuntu 开发环境
linux·windows·ubuntu
霸道流氓气质18 小时前
Windows 本地搭建 CDC 全链路测试环境(Kafka+Canel+binlog+SpringBoot)
windows·spring boot·kafka
郝开18 小时前
Windows 安装 Ostris AI Toolkit
人工智能·windows·toolkit·ai toolkit
疯狂成瘾者1 天前
Java 常见集合方法
java·windows·python