系统:Linux 6.1.21-1-MANJARO
更新/升级我的系统后,mpv 不再工作。似乎 ffmpeg 使用的是 libavcodec 60,而 mpv 使用的是 59。虽然我不能 100% 确定这是问题所在。任何帮助都将不胜感激。
答案1
更新/升级我的系统后,mpv 不再工作。似乎 ffmpeg 使用的是 libavcodec 60,而 mpv 使用的是 59。
pacman -Qo
在两个程序上使用(which mpv
找出其路径)来验证两个包是否都是从官方存储库安装的。
如果是的话,那么解决这个问题就是 Manjaro ffmpeg/mpv 打包者的责任;他们应该在发布新版 ffmpeg 的同时,为 libavcodec 60 发布一个重建的 mpv 包。(或者,至少,如果新版本不兼容,他们应该重建它以依赖于“ffmpeg5”。)
(从技术上来说,您的软件包镜像也有可能最终抓取仅部分更新的软件包数据库,例如它有新的 ffmpeg 但 mpv 却很旧,但这种情况应该很少见 - 并且问题应该会在镜像下次刷新后消失,最多一个小时。)
无论哪种方式,重复系统升级,并确保您的软件包版本与发行版网站上列出的版本相匹配。
另一方面,如果 mpv 是从本地构建的包(AUR 或类似包)安装的,那么你必须重建它才能使用新的库。
另外:在 mpv 可执行文件上运行lddtree
并验证错误的库依赖项是直接来自 mpv 本身还是作为另一个库的传递依赖项而来可能会很有用。有时它是一个“中间”的库,需要更新或重建。