ffmpeg:加载共享库时出错:libavdevice.so.58:无法打开共享对象文件:错误 74

ffmpeg:加载共享库时出错:libavdevice.so.58:无法打开共享对象文件:错误 74

从今天开始,当我运行时,ffmpeg我在这个问题的标题中出现了错误。

我试过,但无法应用该解决方案,因为我有一个目录/etc/ld.so.conf.d,并且该目录中有以下文件: fakeroot-x86_64-linux-gnu.conf i386-linux-gnu.conf libc.conf x86_64-linux-gnu.conf

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.4 LTS
Release:    22.04
Codename:   jammy

答案1

如果您遇到错误,ffmpeg则表明存在库问题,并且您已经注意到存在各种问题.conf文件在/etc/ld.so.conf.d,听起来您的库配置中可能存在不匹配或丢失的路径。鉴于您拥有 Ubuntu 22.04.4 LTS,这里有一个简化的方法来排除故障并可能解决您的问题:

首先,确保ffmpeg正确安装并尝试确定您正在运行的版本。如果您从 Ubuntu 的存储库安装它,则应该正确配置它,但如果它是自定义构建或来自第三方存储库,您可能需要确保它与您的系统兼容。

然后从终端运行ffmpeg并密切注意有关缺少库的任何错误消息。丢失文件的具体名称可以提供修复内容的线索。

由于系统可能不知道某些新安装的库的位置,因此请使用以下命令更新链接器运行时绑定:

sudo ldconfig

我给出的上述命令更新了动态链接器的缓存,以包含中列出的目录中所有已知库的路径/etc/ld.so.conf及其包含的文件/etc/ld.so.conf.d/

另外,如果ffmpeg抱怨您知道已安装的库,请确保链接器配置中包含该库的路径。您可以在中添加新的 .conf 文件/etc/ld.so.conf.d/包含缺少的库所在目录的路径。例如,如果您的图书馆位于/usr/local/lib, 你可以做:

echo "/usr/local/lib" | sudo tee /etc/ld.so.conf.d/mycustomlib.conf
sudo ldconfig

请务必更换/usr/local/lib与有问题的库所在的实际路径。

如果问题仍然存在,请考虑重新安装 ffmpeg 以确保其设置正确:

sudo apt-get update
sudo apt-get install --reinstall ffmpeg

这可以帮助解决任何损坏的安装或不正确的配置。

相关内容