mingw下使用vs2015编译器编译FFMPEG

  • Post author:
  • Post category:其他


由于工作原因,需要在MINGW下编译出一个单独完整的FFMPEG 功能库(而不是avcodec/avformat等很多库)提供给WINDOWS UI使用。

折腾了好几天,下过msys2,ming64,都没有成功,貌似国外的网站访问这些资源速度很慢。

最后使用vs2015+mingw1.0来解决这个问题。

过程如下记录如下。

一、mingw下编译ffmpeg

考虑了如下几种方案:

1.修改ffmpeg的makefile,使它能生成一个单独的DLL。也许这种方法是最好的,但是本人对MAKEFILE不熟悉,望而却步。

2.编译成静态库,再创建一个VS(2010、2013)的DLL功能对起进行封装。 众所周知,MINGW编译出的静态库需要libgcc.a、libmingwex.a、libcoldname.a

而且需要注意链接顺序,网上多数开发者的经验是MINGW生成的静态库兼容性不好,经常出现程序崩溃,所以放弃这种方案。

3.使用vs工具链来进行编译。由于 vs2013之前的版本不支持c99语言,故需要配置

C99-to-C89 Converter & Wrapper (http://ffmpeg.org/platform.html#Microsoft-Visual-C_002b_002b-or-Intel-C_002b_002b-Compiler-for-Windows)。

本人按照步骤做的,但是编译时还是不认识c99语法。 只能下载最新的vs2015来进行编译。

mingw的配置在此不做描述,网络有很多的参考。这里主要记录在mingw下用vs2015编译时碰到的一些问题以及解决方法。



版权声明:本文为anbinger2013原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。