上一篇文章讲了lvgl的ui显示

linux下移植LVGL v9.1.0实现屏幕UI显示-CSDN博客

这篇文章讲一下 ui+触控 功能实现

将配置文件中的LV_USE_EVDEV值设置为1,开启触控使能

这个时候是编译不过的,还需要evdev库支持,所以需要先交叉编译libevdev库

下载链接:libevdev / libevdev · GitLab

觉得下载慢的可以从我的gitee下载:罗鸿华/lvgl

注意:要实现触控功能,内核需要先增加对应的触控驱动代码,将其编译入内核,如果出现/dev/input/event0这个文件,就表示驱动触控驱动正常运行

libevdev交叉编译

源码下载解压后,进入源码目录

## --host 交叉编译平台
## --perfix 安装路径
./autogen.sh
./configure --host=arm-rockchip830-linux-uclibcgnueabihf CC=arm-rockchip830-linux-uclibcgnueabihf-gcc --prefix=$PWD/_install
make -j4 && make install

lvgl+evdev交叉编译

回到lvgl的build目录下,首先设置pkg环境变量,这样编译lvgl的时候就可以找到evdev库

## 将evdev编译生成的pkgconfig路径添加
export PKG_CONFIG_PATH=/share/RK/usr/tools/lvgl/libevdev/libevdev-master/_install/lib/pkgconfig:$PKG_CONFIG_PATH

这个时候编译有可能还是找不到evdev的库文件,所以在CMakeLists.txt中增加evdev的库文件路径

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L/share/RK/usr/tools/lvgl/libevdev/libevdev-master/_install/lib")

之后就可以重新编译,运行

更多推荐