Linux: "cef_media_plugin not found" — web/media doesn't work #245
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#245
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Report
Multiple Linux users report a "cef_media_plugin not found" error, and media doesn't work: web / MOAP / media on a prim / the built-in browser, possibly also the help and search floaters.
Investigate
libmedia_plugin_cef.so),dullahan_host, the CEF runtime (libcef.so, resources / locales /icudtl.dat/ snapshot blobs) andSLPlugin? Are they at the paths the viewer looks in? Checkviewer_manifest.py's Linux section, and the rename to Slipstream (#15) for stalealchemynames or paths.LLViewerMedia/LLPluginClassMediaresolves the plugin directory on Linux, and the launcher'sLD_LIBRARY_PATH.make glibc-check,glibc_compat.h);fix_isa_note.py);nss,atk,cups,libxss, …);chrome-sandboxsetuid / user-namespace requirements.Asks for reporters
Slipstream.log: lines around "plugin", "SLPlugin", "cef" and "media".ldd lib/libmedia_plugin_cef.so(or wherever it is in the tarball).Findings so far
The packaging looks correct. I checked both a local build and the CI
v0.14.0-beta.1tarball. Both shipbin/SLPlugin,bin/llplugin/libmedia_plugin_cef.so,bin/dullahan_host,bin/chrome-sandbox,lib/libcef.so, the.pakfiles,locales/,icudtl.datandv8_context_snapshot.bin. They are at the exact paths the viewer looks in (<bin>/SLPlugin,<bin>/llplugin/lib<name>.so).These are not the cause:
alchemynames from the rename.chrome-sandboxsetuid bit: dullahan runs CEF withno_sandboxunlesschrome-sandboxis setuid root, so Ubuntu's user-namespace restriction does not apply.Most likely cause (not yet confirmed with a reporter's log): a system library that CEF needs is missing.
libcef.soneeds about 20 system libraries that the viewer itself does not. On a bare Ubuntu 24.04 these are missing:libnss3 libnssutil3 libsmime3 libnspr4 libatk-1.0 libatk-bridge-2.0 libatspi libcups libgbm libxkbcommon libXcomposite libXdamage libXrandr libXfixes libXext libxcb libasound libpango-1.0 libcairo libdbus-1 libexpat. When one is missing, the plugin's dlopen fails and the viewer shows "The following Media Plugin has failed: media_plugin_cef". The loader's actual reason only went to SLPlugin's stderr and never reached Slipstream.log.Changes on branch
cefmedia(in the next build):plugin host could not load ...: <reason>) and shows it in the failure dialog.slipstreamlauncher runslddon libcef at startup and prints/notifies any missing libraries.lddin a clean container:sudo apt install libnss3 libnspr4 libatk1.0-0t64 libatk-bridge2.0-0t64 libatspi2.0-0t64 libcups2t64 libdrm2 libgbm1 libxkbcommon0 libxcomposite1 libxdamage1 libxrandr2 libasound2t64 libpango-1.0-0 libcairo2sudo dnf install nss nspr atk at-spi2-atk at-spi2-core cups-libs libdrm mesa-libgbm libxkbcommon libXcomposite libXdamage libXrandr alsa-lib pango cairosudo pacman -S --needed nss nspr at-spi2-core libcups libdrm mesa libxkbcommon libxcomposite libxdamage libxrandr alsa-lib pango cairodullahan_host's RUNPATH (:/../lib:/home/runner/...) is rewritten to$ORIGIN/../lib.Reporters: please post
LD_LIBRARY_PATH=./lib ldd lib/libcef.so | grep "not found"./slipstreamfrom a terminal, open the built-in browser, and paste anyapr_dso_load ... failedline. It names the missing library.Closing this as likely fixed: since this was reported, the CEF helper's broken library path was fixed and the viewer now logs exactly which library is missing if the web/media plugin can't load.
If web pages or media still don't work for you, please test on the current version, 1.0.0 Beta 9, and install it through one of our packages, which pull in the system libraries the built-in browser needs:
Download: https://slipstreamviewer.org/download -- install guide: https://slipstreamviewer.org/wiki/install
If it still fails, re-open this ticket with your distro, the exact message, and your
Slipstream.log(the line starting withapr_dso_loadnames the missing library).