vlc 3.0 ./configure дает Missing libav или FFmpeg, несмотря на то, что они у меня есть

Я пытаюсь собрать последнюю версию vlc-3.0 (git cloned) из исходного кода, но запуск ./configure дает мне следующую ошибку:

configure: error: Missing libav or FFmpeg

И это несмотря на то, что я собрал из исходников и установил свежий ffmpeg-3.2.2 со следующей конфигурацией, включая --enable-shared (см. Ниже). Также в моем каталоге / usr / lib есть библиотека libavcodec.a, libavcodec.so.57.64.101 с символическими ссылками на нее libavcodec.so и libavcodec.so.57

Просто посмотрел на https://github.com/videolan/vlc/blob/master/configure.ac, для него требуется libavcodec> = 57.16.0 из libav или> = 57.37.100 из ffmpeg, а 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

person qmastery    schedule 17.01.2017    source источник


Ответы (1)


Я получил действительно полезный совет от Реми Дени-Курмон в ветке форумов 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 вместо ошибки, и vlc может быть сконфигурирован и собран без каких-либо проблем! ^ _ ^

person qmastery    schedule 17.01.2017
comment
export PKG_CONFIG_PATH = / usr / local / lib / pkgconfig /: / usr / local / lib64 / pkgconfig / # необходимо использовать экспорт !!!! - person vacing; 19.08.2019