100部看黄禁用免费入口,大连网站优化多少钱,系统管理的主要内容,网站开发计算机配置dv1/eglinfo 是一个开源的 EGL 信息检测工具#xff0c;广泛用于 OpenGL ES 图形栈调试、驱动验证和嵌入式平台图形支持排查。在 Rockchip RK3588 上编译该工具可以协助我们确认 EGL DRM 是否配置正确#xff0c;尤其在无窗口系统#xff08;如 eglfs、framebuffer#xf…dv1/eglinfo 是一个开源的 EGL 信息检测工具广泛用于 OpenGL ES 图形栈调试、驱动验证和嵌入式平台图形支持排查。在 Rockchip RK3588 上编译该工具可以协助我们确认 EGL DRM 是否配置正确尤其在无窗口系统如 eglfs、framebuffer环境中非常实用。 第一步准备源码与工具链
✅ 克隆项目
git clone https://github.com/dv1/eglinfo.git
cd eglinfo项目默认自带一个较老版本的 waf 构建系统不兼容 Python 3.7 及以上需进行升级处理。 ⚠️ 问题一waf 抛出 StopIteration 异常
❌ 报错内容
RuntimeError: generator raised StopIteration原因项目中自带的 .waf3-* 是 waf 1.7.x 版本不兼容 Python 3.7在新版解释器中抛出异常。
✅ 解决方案替换 waf
wget https://waf.io/waf-2.0.22 -O waf
chmod x wafwaf 2.x 支持 Python 3.7-3.12并可无缝替代旧版本。无需改动其它项目文件。 ⚙️ 第二步配置编译选项
./waf configure --platformfb --devicegeneric参数说明--platformfb使用 framebuffer 环境适配无 X11 的 RK3588--devicegeneric通用设备类型 ⚠️ 问题二/usr/bin/env: python No such file 报错
❌ 报错信息
/usr/bin/env: python: No such file or directory原因部分 Ubuntu 系统默认没有 python 命令只有 python3而 waf 脚本使用的是 #!/usr/bin/env python。
✅ 解决方案
sudo ln -s /usr/bin/python3 /usr/bin/python或者修改 waf 脚本第一行
#!/usr/bin/env python
# 改为
#!/usr/bin/env python3️ 第三步编译与安装
./waf
sudo ./waf install默认会将 eglinfo 安装到 /usr/bin/eglinfo可直接运行。 第四步验证运行效果
export EGL_PLATFORMfb # 在 framebuffer 模式下推荐设置
eglinfo你将看到 EGL vendor、版本、支持的 config 以及图形 API 等信息。 ⚠️ 常见运行期错误 错误eglinfo: eglInitialize failed
可能原因解决方法未加载 DRM 设备确认 /dev/dri/card0 存在权限正确libmali.so 不支持 fb 模式替换为 dummy 版本的 Mali EGL 库无 X11 依赖未设置环境变量添加 export EGL_PLATFORMfb未加载 Mali GPU 模块使用 lsmod ✅ 编译成功截图示意
如果一切顺利运行 eglinfo 将输出形如
EGL API version: 1.4
EGL vendor string: ARM
EGL version string: 1.4 Valhall-g13p0-01eac0
EGL client APIs: OpenGL_ES
...这说明 Mali 驱动生效、EGL 成功初始化、系统支持 OpenGL ES 渲染 ✅ 附自动化构建脚本适用于 RK3588 Ubuntu
#!/bin/bash
set -e
cd /home/firefly
git clone https://github.com/dv1/eglinfo.git
cd eglinfowget https://waf.io/waf-2.0.22 -O waf
chmod x waf[ ! -f /usr/bin/python ] sudo ln -s /usr/bin/python3 /usr/bin/python./waf configure --platformfb --devicegeneric
./waf
sudo ./waf install