LVGL (Light and Versatile Graphics Library) is a free and open-source graphics library that provides everything you need to create visually appealing and high-performance user interfaces on embedded devices.
This project packages the LVGL library version 9.2.2 for installation and use on Linux-based systems. It includes custom patches to improve compatibility and functionality.
libdrm
libinput
libxkbcommon
ffmpeg
cmake
pkgconfig
git
SDL2
ffmpeg-dev
To build and install the library manually, follow these steps:
-
Clone the repository and navigate to the project directory:
git clone https://github.com/serper/liblvgl.git cd liblvgl
-
Download the sources and apply the patches:
wget https://github.com/lvgl/lvgl/archive/refs/tags/v9.2.2.tar.gz -O liblvgl-9.2.2.tar.gz tar -xzf liblvgl-9.2.2.tar.gz cp lv_conf.h lvgl-9.2.2/ patch -p1 < fix-CMakeLists.txt.patch patch -p1 < fix-custom.cmake.patch patch -p1 < fix-lv_blend_neon.S.patch
-
Build and install the library:
mkdir build cd build cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr -DLV_CONF_BUILD_DISABLE_DEMOS=0 -DLV_CONF_BUILD_DISABLE_EXAMPLES=0 .. make -j8 sudo make install
To create the APK package for Alpine Linux, follow these steps:
-
Clone the repository and navigate to the project directory:
git clone https://github.com/serper/liblvgl.git cd liblvgl
-
Ensure you have
abuild
installed and configured on your system. -
Run the following commands in the project directory:
abuild checksum abuild -r
To create the Windows package using makepkg
for MSYS2, follow these steps:
-
Install MSYS2 from msys2.org and update the package database:
pacman -Syu
-
Install the necessary build tools:
pacman -S base-devel mingw-w64-x86_64-toolchain git
-
Clone the repository and navigate to the project directory:
git clone https://github.com/serper/liblvgl.git cd liblvgl
-
Build the package:
makepkg -si
After installation, you can include LVGL in your C/C++ project and start developing graphical interfaces.
Contributions are welcome. Please open an issue or a pull request on GitHub.
This project is licensed under the MIT License. See the LICENSE
file for details.
- Sergio Perez (serper)