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
相关推荐
春日见1 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
C++ 老炮儿的技术栈1 小时前
VS2015 + Qt 实现图形化Hello World(详细步骤)
c语言·开发语言·c++·windows·qt
浩浩测试一下2 小时前
内网---> WriteOwner权限滥用
网络·汇编·windows·安全·microsoft·系统安全
一个人旅程~3 小时前
Dell n4020双系统分区步骤和linux优化操作
linux·windows·电脑
love530love3 小时前
【高阶编译】Windows 环境下强制编译 Flash Attention:绕过 CUDA 版本不匹配高阶指南
人工智能·windows·python·flash_attn·flash-attn·flash-attention·定制编译
勾股导航3 小时前
Windows安装GPU环境
人工智能·windows·gnu
x***r1513 小时前
PhpStudy2018怎么用?完整安装与使用指南(新手必看)
windows
一品人家9 小时前
win32汇编使用GDI+入门教程之九
汇编·windows·win32汇编
小天源14 小时前
Error 1053 Error 1067 服务“启动后立即停止” Java / Python 程序无法后台运行 windows nssm注册器下载与报错处理
开发语言·windows·python·nssm·error 1053·error 1067
十五年专注C++开发16 小时前
MinHook:Windows 平台下轻量级、高性能的钩子库
c++·windows·钩子技术·minhook