测试环境:
编译libmali
1. 准备工作
将 libmali 源代码复制到开发板的 /home/neardi 目录:
cp -r SDK/external/libmali /home/neardi/
2. 编译
进入libmali 目录,使用 meson 进行编译:
neardi@LPA3588:~$ cd ~/libmali
neardi@LPA3588:~/libmali$ meson setup builddir -Darch=aarch64 -Dplatform=x11 -Dgpu=valhall-g610 -Dversion=g6p0 -Dkhr-header=true
选项说明:
- -Darch=aarch64:指定架构为 ARM 64 位。
- -Dplatform=x11:指定平台为 X11。
- -Dgpu=valhall-g610:指定 GPU 类型。
- -Dversion=g6p0:指定版本号。
- -Dkhr-header=true:启用 Khronos 头文件支持。
编译正确示例输出:
The Meson build system
Version: 1.5.2
Source dir: /home/neardi/libmali
Build dir: /home/neardi/libmali/builddir
Build type: native build
Project name: libmali
Project version: 1.9.0
C compiler for the host machine: cc (gcc 9.4.0 "cc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0")
.....
libmali 1.9.0
User defined options
arch : aarch64
gpu : valhall-g610
khr-header: true
platform : x11
version : g6p0
Found ninja-1.11.1.git.kitware.jobserver-1 at /home/neardi/.local/bin/ninja
3. 安装
编译成功后,使用ninja安装编译好的库:
neardi@LPA3588:~/libmali$ ninja -C builddir
neardi@LPA3588:~/libmali$ sudo ninja -C build install
安装正确示例输出:
ninja: Entering directory `builddir'
[0/1] Installing files.
Installing subdir /home/neardi/libmali/include/GBM to /usr/local/include/
Installing /home/neardi/libmali/include/GBM/gbm.h to /usr/local/include
.....
Installing symlink pointing to libGLESv1_CM.so.1 to /usr/local/lib/aarch64-linux-gnu/libGLESv1_CM.so
Installing symlink pointing to libGLESv2.so.2 to /usr/local/lib/aarch64-linux-gnu/libGLESv2.so
Installing symlink pointing to libMaliOpenCL.so.1 to /usr/local/lib/aarch64-linux-gnu/libMaliOpenCL.so
Running custom install script '/home/neardi/libmali/scripts/fixup_dummy.sh lib/aarch64-linux-gnu optimize_3/aarch64-linux-gnu/libmali-valhall-g610-g6p0-x11-gbm.so'
4.检查库文件是否正确安装
ls /usr/local/lib/aarch64-linux-gnu/ | grep mali
若输出显示了 libmali.so、libGLESv2.so 、libmali-valhall-g610-g6p0-x11-gbm.so 等相关库文件,说明安装成功。
5.运行 glmark2-es2 验证
LPA3588打开终端运行 glmark2-es2 来测试功能和性能。若成功运行,意味着 libmali 安装和配置正确。
如下图显示:

6.常见问题
确认Meson的安装路径:
which meson
例如输出 /usr/bin/meson,修改系统默认Meson版本:
sudo ln -sf /usr/local/bin/meson /usr/bin/meson
查看 meson 版本:
meson --version
确保输出的 meson 版本大于或等于 1.5.2,然后重新编译并安装 libmali。