Fixed
-
ROCKNIX devices in panfrost mode could not start (#12). The port bundles its own libraries (built against an old glibc so it runs on every firmware) and puts them first on the library path. Mesa's EGL driver is loaded by glvnd through a plain
dlopen, which walks that same path — so on a firmware with newer Mesa, the bundledlibstdc++shadowed whatlibgalliumneeded (GLIBCXX_3.4.29), the driver failed to load, and glvnd silently ended up with no driver at all. The visible symptom waseglGetDisplay -> EGL_NO_DISPLAY / EGL_BAD_PARAMETER, which looks like a broken EGL and was really the port's own search path.Now the Mesa driver is probed first, and only if it fails does the port let the firmware's own copies of the shadowed libraries take precedence — reverting if that doesn't help, since a firmware with older libraries must keep the bundled ones. Either way the driver's dependency audit is written to
log.txt, so a future failure names the exact library.Diagnosed from field logs by @AmmoniumDichromate, whose
ldd32output pinned the missing symbol precisely.
If you're on ROCKNIX
There is also a working alternative that needs no update: switching the device's GPU driver to libmali makes the port run today (reported working on an RG DS). This release is about making it work in panfrost mode too — reports from either mode are welcome.
Everything else
No changes for ArkOS/dArkOS/muOS — those use the vendor blob path, which this doesn't touch.