Я использую Msys MinGW (x86_64) и вытащил моментальный снимок последней основной версии FFmpeg с их веб-сайта. Вот мои ./configure
варианты. Я планирую использовать двоичные файлы как на компьютере, на котором я его скомпилировал, так и на других Windows компьютерах, которые у меня есть.
./configure --enable-libaom --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --enable-libgme --enable-libmfx --enable-libkvazaar --enable-libmp3lame --enable-libilbc --enable-libvpx --enable-libmodplug --enable-version3 --enable-nonfree --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-libfdk-aac --enable-libopenh264 --enable-libopenjpeg --enable-nvenc --enable-nvdec --enable-cuda --enable-cuvid --enable-libtwolame --enable-vapoursynth --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxavs2 --enable-gpl --enable-static --disable-shared
Вывод скрипта configure (pastebin)
Вывод uname -a
(в Msys)
MINGW64_NT-10.0-18362 <scrubbed> 3.1.4-340.x86_64 2020-05-22 08:28 UTC x86_64 Msys
Проблема, с которой я столкнулся, заключается в том, что, несмотря на передачу параметров --enable-static
и --disable-shared
, сгенерированные исполняемые файлы по-прежнему требуют libchromaprint.dll
, libfdk-aac-2.dll
и libgme.dll
для запуска. Я ожидал, что FFmpeg будет выполняться независимо от любых файлов DLL, поскольку я передал эти параметры в ./configure
.