gpt4 book ai didi

linux - vlc 3.0 ./configure 给出 "Missing libav or FFmpeg"尽管我有它们

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:07 28 4
gpt4 key购买 nike

我正在尝试从源代码构建最新开发版本的 vlc-3.0(git 克隆),但运行 ./configure 时出现以下错误:

configure: error: Missing libav or FFmpeg

尽管我已经从源代码构建并使用以下配置安装了新的 ffmpeg-3.2.2,包括 --enable-shared(见下文)。此外,在我的/usr/lib 目录中有一个库 libavcodec.a 、 libavcodec.so.57.64.101 以及指向它的符号链接(symbolic link) libavcodec.so 和 libavcodec.so.57

刚看了https://github.com/videolan/vlc/blob/master/configure.ac源代码,它需要来自 libav 的 libavcodec >=57.16.0 或来自 ffmpeg 的 >=57.37.100,而 57.64.101 满足该要求,因此仍然无法理解哪里出了问题。

也许我需要将一些额外的标志传递给 vlc-3.0 以强制它注意到我的 libavcodec 库?如果是,我应该尝试使用哪些标志?

ffmpeg 配置选项(以防万一):

--prefix=/usr --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --disable-libebur128 --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-libopencv --enable-frei0r --enable-libx264 --enable-chromaprint --enable-shared

最佳答案

Rémi Denis-Courmont 在 VLC 论坛主题 - https://forum.videolan.org/viewtopic.php?f=13&t=137096 上给我提供了非常有用的建议

Make sure that "pkg-config --modversion libavcodec" works.
If not, then FFmpeg is essentially not installed.

此命令给了我以下错误信息:

Package libavcodec was not found in the pkg-config search path.
Perhaps you should add the directory containing `libavcodec.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libavcodec' found

检查了我的 PKG_CONFIG_PATH 变量 - 它是空的:

echo $PKG_CONFIG_PATH

然后我在/usr 目录中搜索 libavcodec.pc ,并找到了它:

find /usr -name "libav*.pc"
/usr/lib/pkgconfig/libavutil.pc
/usr/lib/pkgconfig/libavcodec.pc
/usr/lib/pkgconfig/libavfilter.pc
/usr/lib/pkgconfig/libavformat.pc
/usr/lib/pkgconfig/libavdevice.pc
/usr/lib/pkgconfig/libavresample.pc
/usr/lib64/pkgconfig/libavc1394.pc

现在我需要做的就是添加这些路径:/usr/lib/pkgconfig/和/usr/lib64/pkgconfig/以防万一,到 PKG_CONFIG_PATH(可以通过 bashrc 或任何其他方式完成)。之后,“pkg-config --modversion libavcodec”输出的是libavcodec的版本号而不是error,vlc就可以毫无问题的配置和构建了! ^_^

关于linux - vlc 3.0 ./configure 给出 "Missing libav or FFmpeg"尽管我有它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41692115/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com