我想在稳定的 Debian 机器上使用 ffmpeg 和 libmp3lame。唉,Debian 不支持 libmp3lame 软件包。因此,我下载了 ffmpeg 和 lame 编码器的源代码,手动配置并安装它们(在测试机器上)。
但我不想在所有用户的机器上安装 ffmpeg 和 libmp3lame (也是因为构建不稳定)。我只想将它用于单个用户的单个项目。
当我运行 ./ffmpeg/ffmpeg 时,我收到以下错误消息:
# cd ffmpeg
# ./configure --enable-libmp3lame
# make
# ./ffmpeg
./ffmpeg: error while loading shared libraries: libmp3lame.so.0: cannot open shared object file: No such file or directory.
所以我只是尝试将所需的库链接到本地目录:
# ln -s ../lame-3.99.5/libmp3lame/libmp3lame.so ./libmp3lame.so.0
但“./”似乎不在共享库搜索路径中,因此 ffmpeg 找不到它。
我尝试了以下 bash 脚本:
#!/bin/bash
PATH="$PATH:./"
LIB_PATH="$LIB_PATH:./"
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:./"
./ffmpeg
但它仍然不起作用。
我不想以 root 身份安装该库(例如安装到 /usr/lib 中),因为我不想在没有官方包管理器 + 受信任的 Debian 包源的情况下安装任何东西。
那么有没有办法告诉ffmpeg使用“./”目录中的libmp3lame.so.0,这样我就可以在不安装的情况下使用它?
答案1
有一个 debian 多媒体存储库,其中有许多 '不支持的' 多媒体应用程序和库。
对于您的 /etc/apt/sources.list (最好将文件放入 /etc/apt/sources.list.d 中)
deb http://www.deb-multimedia.org/ testing main non-free
deb-src http://www.deb-multimedia.org/ testing main non-free
对我来说效果很好,请查看网站(相同地址)以获取有关不同 debian 版本的详细信息。
我将这些行以及一些解释性注释添加到一个文件中,保存到/etc/apt/sources.list.d/multimedia.list,效果很好。文件命名有限制,请参阅来源.列表 (5)更多细节。