MinGW编译ffmpeg的静态库

MinGW编译ffmpeg的静态库

以前一直以为MinGW编译出来的ffmpeg静态库无法用在VC中,最近才发现不是。方法其实也很简单,先编译ffmpeg的静态库,configure 的时候加上 --enable-static 的选项。

要使用ffmpeg的静态库,必须把ffmpeg用到的其他静态库也链接到VC的工程中。这些库主要包括

libgcc.a:gcc的函数库,一般在C:\MinGW\lib\gcc\mingw32\4.x.x\

libmingwex.a:_snprint函数所在,一般在C:\MinGW\lib\

libcoldname.a:_strcasecmp的实现,也在C:\MinGW\lib\

wsock32.lib:Windows socket库

libz.a:zip压缩库

libfaad、libx264等额外编解码库

ffmpeg.arrozcru.com上面提到,静态库的链接顺序一定不能错,否则运行时会出现一些莫名其妙的问题。建议的链接顺序是

libgcc.a libmingwex.a libcoldname.a

libavcodec.a libavformat.a libavutil.a libswscale.a libz.a libdts.a libfaac.a

libfaad.a libgsm.a libmp3lame.a libnut.a libogg.a libtheora.a libvorbis.a

libvorbisenc.a libx264.a libxvidcore.a libpthreadGC2.a 

wsock32.lib vfw32.lib

你可能感兴趣的:(MinGW编译ffmpeg的静态库)