VLC 媒体播放器过去在 ubuntu 18.04 上运行良好,没有任何问题,现在显示以下错误:
VLC media player 3.0.1 Vetinari (revision 3.0.1-0-gec0f700fcc)
[000055c1a15f6570] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[000055c1a16d23c0] skins2 interface error: cannot instantiate dialogs provider
[000055c1a15fa4e0] main playlist: playlist is empty
[000055c1a16d23c0] [cli] lua interface: Listening on host "*console".
VLC media player 3.0.1 Vetinari
Command Line Interface initialized. Type `help' for help.
Run Code Online (Sandbox Code Playgroud)
我怎么解决这个问题?我已经尝试安装和重新安装它几次,但仍然无法正常工作。
小智 2
长话短说:sudo apt install --reinstall libqt5svg5
在 Ubuntu 18.04 全新安装上我也遇到了这个问题。它实际上似乎来自一些没有正确安装的图形库。这是我的调试故事。
首先按照 @kissste 的建议以详细方式运行vlc -v:
vlc -v
VLC media player 3.0.3 Vetinari (revision 3.0.3-1-0-gc2bb759264)
main libvlc warning: cannot load module `/usr/lib/x86_64-linux-gnu/vlc/plugins/gui/libqt_plugin.so'
(libQt5Svg.so.5: cannot open shared object file: No such file or directory)
main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
skins2 interface error: cannot instantiate dialogs provider
...
> Shutting down.
[000055cbfba501b0] [cli] lua interface: Requested shutdown.
Run Code Online (Sandbox Code Playgroud)
所以就我而言,它抱怨libQt5Svg.so.5没有被发现。让我们检查一下它来自哪个包dpkg -S:
dpkg -S libQt5Svg.so.5
libqt5svg5:amd64: /usr/lib/x86_64-linux-gnu/libQt5Svg.so.5.9.5
libqt5svg5:amd64: /usr/lib/x86_64-linux-gnu/libQt5Svg.so.5.9
libqt5svg5:amd64: /usr/lib/x86_64-linux-gnu/libQt5Svg.so.5
Run Code Online (Sandbox Code Playgroud)
我们有包名称libqt5svg5,也有文件所在的路径,让我们验证它确实不存在ls:
ls -l /usr/lib/x86_64-linux-gnu/libQt5Svg.so.5*
ls: cannot access '/usr/lib/x86_64-linux-gnu/libQt5Svg.so.5*': No such file or directory
Run Code Online (Sandbox Code Playgroud)
有趣的是我刚刚安装vlc,所以包管理器应该已经提取了libqt5svg5依赖项本身。我很好奇,所以我们来看看它是否安装了dpkg --list:
dpkg --list libqt5svg5
||/ Name Version Architecture Description
+++-=====================-===============-===============-================
ii libqt5svg5:amd64 5.9.5-0ubuntu1 amd64 Qt 5 SVG module
Run Code Online (Sandbox Code Playgroud)
所以是的,它已安装,但可能已损坏,因此我们需要重新安装它:
sudo apt install --reinstall libqt5svg5
Run Code Online (Sandbox Code Playgroud)
再次运行 vlc,并-v标记警告消息已消失,我可以看到 vlc UI。
小智 0
运行 vlc 并了解更多详细信息:
vlc -v
如果libGL.so.1缺少则继续,
查找 libGL.so.1 的位置
find / -name libGL.so.1
将 libGL.so.1 的路径添加到 vlc.conf (示例/usr/lib/x86_64-linux-gnu/mesa/:)
sudo vi /etc/ld.so.conf.d/vlc.conf
最后运行:
sudo ldconfig -v