首页 > 代码库 > ffmepg mingw + vs2012 编译

ffmepg mingw + vs2012 编译

网上有很多mingw 编译ffmpeg的介绍,但是多很难顺利完成,整理了网上的一些资料把编译过程整理了一下,便于大家使用

1、搭建 MinGW 的编译环境,这里不做过多介绍,网上一大堆

2、安装yasm

   

 地址:http://yasm.tortall.net/Download.html,如果不需要x264支持可以不安装

    改名为yasm.exe放到C:\WINDOWS\system32 或者 C:\MinGW\msys\1.0\bin文件夹下。

3、安装pkg-config

   下载pkg-config-0.23-2.zip及glib_2.18.4-1_win32.zip 

    http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip 
    http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.4-1_win32.zip 
    把pkg-config.exe 和 glib_2.18.4-1_win32.zip中的libglib-2.0-0.dll放在mingw的bin目录下

4、安装c99编译环境(如果是vs2013 + ,跳过此步

   下载c99-to-c89 : https://github.com/libav/c99-to-c89/downloads  或http://pan.baidu.com/s/1mgHs18s 

   将c99conv.exe和c99wrap.exe复制到:d:/MinGW/msys/1.0/bin 目录下; 

 
  C99头文件inttypes.h和stdint.h :
 http://code.google.com/p/msinttypes/downloads/list 或http://pan.baidu.com/s/1o6sRThS

  vs2012只需将inttypes.h头文件复制到: C:\Program Files\Microsoft Visual Studio 11.0\VC\include 目录下即可; 

 

5、配置环境变量

     打开%MSYS_HOME%/1.0/etc/profile文件 ,添加如下代码

        if [ -z "$pkg-config" ]; then  

 

   export pkg-config=/c/MinGW/bin/pkg-config.exe

fi 

 

6、配置编译环境

     

 1、复制:c/MinGW/msys/1.0/msys.bat 到同目录下,改名叫做msys_vs2012.bat

     2、在msys_vs2012.bat开头部分添加:call " C:\Program Files\Microsoft Visual Studio 11.0\VC\bin\vcvars32.bat" ; 

     3、重命名 d:/MinGW/msys/1.0/bin/link.exe 为link_renamed.exe ,这一步是防止这个link.exe与vc的link.exe发生冲突,编译完成之后记得修改回来; 

7、编译 

     

 打开msys_vs2012.bat,进入要编译的目录

   1、 x264编译
    为了让编译出来的ffmpeg支持对x264格式的编解码,您需要先下载x264。
    到:http://www.videolan.org/developers/x264.html下载 
    文件名类似为:last_x264.tar.bz2 的包。

    last_x264.tar.bz2 接压到:C:\MinGW\msys\1.0\home\duxp\plugin\  目录下,双击“C:\MinGW\msys\1.0\msys.bat”,启动“MinGW32”,切换到x264目录:
    再执行以下命令:
    $./configure --prefix=/usr/local/vs2012  --enable-static --enable-win32thread  

    $ make
    $ make install
    编译结果在:C:\MinGW\msys\1.0\local\vs2012 目录下

   2、ffmpeg编译

   

 $ ./configure --prefix=./vs2012_build --enable-gpl --enable-nonfree --enable-postproc --enable-avfilter --enable-w32threads --enable-runtime-cpudetect --enable-memalign-hack --enable-libx264 --disable-debug --extra-cflags=‘-I/usr/local/vs2012/include‘ --extra-ldflags=‘-L/usr/local/vs2012/lib‘

make

make install

 

 

 

 

ffmepg mingw + vs2012 编译