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
相关推荐
Vex2une5 小时前
Windows 性能监视器发展史:从 PerfMon 计数器到 XPerf 深度诊断
windows·wpa·etw·性能监视器·perfmon·性能计数器·xperf
在角落发呆5 小时前
工具配置备份步骤:从手动备份到自动化方案
运维·windows·自动化
Vd7H20A76 小时前
Windows 下用 llama.cpp 运行 Qwen3.8-27B 并开启 512K 上下文 完全指南
windows·llama
kakakahahahaha13 小时前
Win10/Win11扬声器有电平无声音:Audio服务、默认设备与驱动修复
windows·电脑·笔记本电脑·软件需求·windows电脑没有声音
百事牛科技15 小时前
RAR如何加密码:三种场景一次说清
windows·winrar
水饺编程16 小时前
第1章,[Win32 章节]:API 及 内存管理模式
c语言·c++·windows·visual studio
开发者联盟league16 小时前
windows安装uv
windows·uv
Java小白笔记18 小时前
Java 函数式接口1:从无参任务到自定义多参数查询
java·windows·python
zaemyn202018 小时前
macOS 上 AccessClient 无法唤起?排查 Python 架构与 Windows App 识别问题
windows·python·macos·远程桌面·accessclient
云和数据.ChenGuang19 小时前
langchain4j InMemoryEmbeddingStore常用的方法
java·人工智能·windows·java-ee·fastapi·springai