linux下移植LVGL v9.1.0实现屏幕UI显示
LVGL(Light and Versatile Graphics Library)是一个开源的 嵌入式图形库,专为 资源受限的设备(如 MCU、MPU、单芯片方案)设计,提供丰富的 GUI 组件和图形渲染功能。
前期准备
首先下载源码,需要下载lvgl+ lv_port_linux
Releases · lvgl/lvgl
GitHub - lvgl/lv_port_linux: LVGL configured to work with a standard Linux framebuffer
注意事项:
1、lvgl代码编译需要python3.6以上的环境,如果是16.04版本的Ubuntu需要将安装python3.6
需要升级可参考这篇文章
Ubuntu 16.04轻松升级:安装Python 3.6全攻略揭秘 - 云原生实践
2、要想在arm板子上使用屏幕运行lvgl的程序,内核需配置好,需要打开FB+RGB+BACKLIGHT,另外dts里使能,并根据硬件配置好管脚,如果走的iic协议,还需要配置IIC使能
编译
将源码解压出来,将lvgl的源码重名名为"lvgl",然后拷贝到lv_port_linux下

进入到lv_port_linux源码下,修改user_cross_compile_setup.cmake,将gcc修改为arm平台的编译器

接着编译选择配置文件,我用的是fb设备,所以选择fbdev.defaults这个配置,另外如果你没打开触控,需要将fbdev.defaults配置里的LV_USE_EVDEV设置为0

编译
rm build -rf
mkdir build
cd build
## -DPython3_EXECUTABLE 由于我的编译环境是ubuntu16.04,所以另外安装了python3.6,并指定路径
## -DCMAKE_INSTALL_PREFIX 安装路径cmake -DCMAKE_TOOLCHAIN_FILE="../user_cross_compile_setup.cmake" -DCONFIG=fbdev -DPython3_EXECUTABLE=/usr/local/bin/python3.6 -DCMAKE_INSTALL_PREFIX=../_install ..make -j4 && make install
生成的demo程序在bin文件目录下,可直接放在arm板子运行

效果如下

