MSYS2+MinGW编译ffmpeg库

vcpkg采用VS编译器编译ffmpeg可以顺利通过,但是使用MinGW编译器编译ffmpeg存在报错问题。于是打算采用msys2环境下重新对ffmpeg进行编译。

1、 安装MSYS2:从MSYS2的官方网站(https://www.msys2.org/)下载最新版本的MSYS2安装程序,并按照提示进行安装。

2、下载并解压ffmpeg源码(我这里msys2安装目录是G:\msy264)(这里Administrator是本机登录用户名)

MSYS2+MinGW编译ffmpeg库_第1张图片

3、打开msys2。

MSYS2+MinGW编译ffmpeg库_第2张图片

3、安装编译说需要的系统插件。

pacman -S yasm nasm gcc make

MSYS2+MinGW编译ffmpeg库_第3张图片安装工具链

pacman -S mingw-w64-x86_64-toolchain

 如果空间足够就都安装吧,如果不够,选择自己需要的那个就行了。我这里是选择全部安装。
 

4、进入ffmpeg目录,执行指令对ffmpeg编译环境进行配置

cd /home/Administrator/FFmpeg-n6.1-dev
mkdir build
cd build
../configure --prefix=/home/Administrator/install/ffmpeg --enable-static --disable-shared

如果我们要编译ffplay,需要提前编译好SDL2库(参考MSYS2+MinGW编译ffmpeg库),如果编译过程提示ERROR: sdl2 requested but not found,编译完成SDL2之后,将build目录下的sdl2.pc复制到G:\msys64\mingw64\lib\pkgconfig目录下去,并将上述指令改为如下:

cd /home/Administrator/FFmpeg-n6.1-dev
mkdir build
cd build
../configure --prefix=/home/Administrator/install/ffmpeg --enable-static --disable-shared --enable-sdl --extra-cflags='-I/home/Administrator/install/SDL2/include/SDL2' --extra-ldflags='-L/home/Administrator/install/SDL2/lib'

SDL下载链接:Releases · libsdl-org/SDL (github.com)

SDL2编译指令

cd /home/Administrator/SDL-release-2.28.1
mkdir build
cd build
../configure --prefix=/home/Administrator/install/SDL2
make -j8
make install

5、配置完ffmpeg,执行指令即可完成。

make -j8 && make install

你可能感兴趣的:(ffmpeg)