将 Ubuntu 从 18.04 升级到 20.04 后,ffmpeg 不再起作用。使用任何参数(或无参数)运行 FFmpeg 都会打印以下消息:
$ ffmpeg
ffmpeg: error while loading shared libraries: libcdio.so.17: cannot open shared object file: No such file or directory
它似乎正在寻找 libcdio 的过时版本,这很奇怪,因为我的所有软件包都是最新的,包括 libcdio18。查看 libcdio18 的安装文件,似乎存在版本不匹配的情况:
/usr/lib/x86_64-linux-gnu/libcdio.so.18
/usr/lib/x86_64-linux-gnu/libcdio.so.18.0.0
有人知道如何修复或至少解决这个问题吗?我不确定这是一个错误还是我弄乱了我的包。
另外,我尝试使用 FFmpeg snap,但它不适合我的需求,因为它无法写入 /tmp。我还尝试使用 apt 多次删除并重新安装。
编辑:输出ldd $(which ffmpeg) | grep local
libcdio_paranoia.so.2 => /usr/local/lib/libcdio_paranoia.so.2 (0x00007f6a993e7000)
libcdio_cdda.so.2 => /usr/local/lib/libcdio_cdda.so.2 (0x00007f6a991dd000)
编辑 2:已解决,感谢 N0rbert 在评论中指出的问题。这是我的错,前段时间我一直在捣鼓 CD 音频相关库,以解决这些库版本中的错误,从而获得翻录程序打蛋器可以正常工作。18.04 中一切都运行良好,但升级一定暴露了我造成的损害。删除 libcdio_paranoia.so.2、libcdio_cdda.so.2 和 /usr/local/lib/ 文件夹中的其他垃圾后,ffmpeg 又可以正常工作了。
答案1
您必须通过以下方式删除本地编译的库
sudo rm /usr/local/lib/libcdio_paranoia.so.2
sudo rm /usr/local/lib/libcdio_cdda.so.2
然后重试。