Я пытаюсь использовать набор инструментов MinGW-w64 под Cygwin для компиляции FFmpeg для Windows 7, но у меня возникают проблемы при попытке получить pkg-config
, чтобы увидеть оба пакета, скомпилированных из исходного кода (расположенного в /usr/bin/lib/pkgconfig
) и пакеты MinGW-w64, установленные с помощью диспетчера пакетов Cygwin (находится в /usr/x86_64-w64-mingw32/sys-root/mingw/lib/pkgconfig
).
В настоящее время pkg-config
только находит пакеты в /usr/bin/lib/pkgconfig
, и попытка скомпилировать пакеты, расположенные в пути sys-root, приводит к ошибке, подобной следующей:
ОШИБКА: libass не найден при использовании pkg-config
Это несмотря на то, что я включил пути обоих каталогов пакетов в PKG_CONFIG_LIBDIR
(см. этот ответ , почемуЯ использую PKG_CONFIG_LIBDIR
вместо PKG_CONFIG_PATH
), и добавил к --extra-cflags
и --extra-ldflags
:
cd ffmpeg &&
export PKG_CONFIG_LIBDIR=/usr/local/lib/pkgconfig:/usr/x86_64-w64-mingw32/sys-root/mingw/lib/pkgconfig &&
./configure
--arch=x86_64
--cross-prefix=x86_64-w64-mingw32-
--target-os=mingw32 \
--extra-cflags="-static -I/usr/local/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include" \
--extra-ldflags="-static -L/usr/local/lib -L/usr/x86_64-w64-mingw32/sys-root/mingw/lib" \
--extra-libs="-pthread -lm" \
--prefix="/usr/local" \
--pkg-config="pkg-config" \
--pkg-config-flags="--static" \
--enable-libaom \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-libx265 \
--enable-gpl \
--enable-nonfree \
--enable-static \
--disable-shared &&
make -j$(nproc) &&
make install
Поддерживает ли PKG_CONFIG_LIBDIR
только один путь, или есть некоторыедругое предупреждение, что я здесь скучаю?