Page MenuHomeSolus

libvlc error: stale plugins cache" at VLC startup after upgrade to VLC 3.0
Closed, ResolvedPublic

Description

After upgrade to VLC 3.0, I'm getting "libvlc error: stale plugins cache" at VLC startup :

$ vlc
VLC media player 3.0.0 Vetinari (revision 3.0.0-30-gef4c265336)
[00000000019891a0] main libvlc error: stale plugins cache: modified /usr/lib64/vlc/plugins/services_discovery/libmtp_plugin.so
[00000000019891a0] main libvlc error: stale plugins cache: modified /usr/lib64/vlc/plugins/services_discovery/libavahi_plugin.so
...

As suggested at here, running the following command fixes the error :

sudo /usr/lib/vlc/vlc-cache-gen /usr/lib64/vlc/plugins/

The VLC package should refresh plugins cache after installing in Solus as well.

Event Timeline

Are there plugins that fall outside the vlc package (maybe not in Solus, but in the world)? It seems odd if there isn't as it could just create the plugins cache in the build.

I don't have any plugin installed other than those coming from the package.

vlc tries to do this during make install however, vlc-cache-gen wants root so that's why it's failing

if test "x86_64-solus-linux-gnu" = "x86_64-solus-linux-gnu"; then \
	PATH="/home/build/YPKG/root/vlc/install/usr/bin:$PATH" \
	LD_LIBRARY_PATH="/home/build/YPKG/root/vlc/install/usr/lib64:$LD_LIBRARY_PATH" \
	"/home/build/YPKG/root/vlc/install/usr/lib64/vlc/vlc-cache-gen" \
		 "/home/build/YPKG/root/vlc/install/usr/lib64/vlc/plugins" ; \
else \
	echo "Cross-compilation: cache generation skipped!" ; \
fi
LD_LIBRARY_PATH=/home/build/YPKG/root/vlc/install/usr/lib64
+ /home/build/YPKG/root/vlc/install/usr/lib64/vlc/vlc-cache-gen /home/build/YPKG/root/vlc/install/usr/lib64/vlc/plugins/
ERROR: ld.so: object 'libfakeroot.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
joebonrichie moved this task from Backlog to Package Fixes on the Software board.

I am running into this issue using the python bindings for vlc (mycroft-core uses vlc as a backend).

Jun 22 14:06:15 solus mycroft-audio[7174]: [00007fc3940d31c0] main libvlc error: stale plugins cache: modified /usr/lib64/vlc/plugins/video_filter/lib*_plugin.so

I can run the command above to fix the problem manually, but this issue is causing mycroft to just suddenly stop working and hard to debug what on earth is wrong with it! Thankfully I found this task and was able to get it working again, but the average user would probably just give up.

joebonrichie raised the priority of this task from Low to High.Jun 22 2018, 2:06 PM

I'll change the priority as it was previously thought this didn't break anything.

Tried to manually do this post %make_install with this:

export PATH="/home/build/YPKG/root/vlc/install/usr/bin:$PATH"
export LD_LIBRARY_PATH="/home/build/YPKG/root/vlc/install/usr/lib64:$LD_LIBRARY_PATH"
cd $installdir/usr/lib64/vlc
LD_PRELOAD=/usr/lib64/libfakeroot/libfakeroot.so ./vlc-cache-gen /home/build/YPKG/root/vlc/install/usr/lib64/vlc/plugins/

Runs without error but the stale cache issue is still present when vlc is opened. If you do this outside of solbuild without sudo it also runs without error but doesn't work. Might have to give in and add a post-install for now.

@clivejo do the python bindings work if you manually remove the plugin cache? sudo rm /usr/lib64/vlc/plugins/plugins.dat

The build process isn't failing on creating the cache as I thought previously, it successfully creates the plugins.dat cache file. However, doesn't seem to be usable by vlc. Seems we will need a usysconf trigger to run vlc-cache-gen after all.

Running:

sudo /usr/lib/vlc/vlc-cache-gen /usr/lib64/vlc/plugins/

Seems to have fixed it for the time being, I'm not sure how the cache got "stale" overnight (it was working yesterday and started errorring out today). The last update to vlc was the 15th June.

@clivejo do the python bindings work if you manually remove the plugin cache? sudo rm /usr/lib64/vlc/plugins/plugins.dat

The bindings appear to work. But the only testing was to reboot and restart mycroft with the cache removed.

Metalking778 renamed this task from "libvlc error: stale plugins cache" at VLC startup after upgrade to VLC 3.0 to "libvlc .Jun 16 2020, 8:07 PM
Metalking778 updated the task description. (Show Details)
Metalking778 changed the edit policy from "All Users" to "Metalking778 (Harvey Hobbs)".
JoshStrobl renamed this task from "libvlc to libvlc error: stale plugins cache" at VLC startup after upgrade to VLC 3.0.Jun 16 2020, 8:27 PM
JoshStrobl updated the task description. (Show Details)
JoshStrobl added subscribers: clivejo, braykov, joebonrichie and 2 others.
JoshStrobl added a subscriber: JoshStrobl.

Sorry about that folks, seems we had a random user being abusive for seemingly no reason.

DataDrake claimed this task.
DataDrake added a subscriber: DataDrake.

No one was reported any cache issues in over 2 years now. Tentatively closing this, but please reopen if you are experiencing this issue.