简单记录一下之前编译的步骤,以备后续查看。
vs版本:vs2013update5
ffmpeg版本:4.02
电脑系统:win7 64bit ,win8 64bit
编译一个在windos平台下能用VS单步调试的FFMPEG。之所以选择VS2013,是因为VS2013支持大部分C99的特性,不需要改动代码,也不需要使用C99转C89的工具。
MinGW和yasm是绕不过去的,因为需要使用MinGW来生成config.h,而ffmpeg的汇编语法和VS的不一样,因此需要yasm。
1. 下载FFMPEG源码,下载地址:http://ffmpeg.zeranoe.com/builds/;
2. 下载MinGW安装器,下载地址:http://www.mingw.org/;下载完成后安装,我安装的是32位x86的,安装完成后点运行,标记上以下几项:
然后在Installation菜单下点击Apply Changes
3. 下载yasm,下载地址: http://yasm.tortall.net/ ;http://yasm.tortall.net/Download.html下载后改名为yasm.exe,复制到C:/MinGW/msys/1.0/bin目录下;
image.png
- 配置C:/MinGW/msys/1.0/msys.bat,在此文件的最前面(@echo off之后)添加一行如下内容:
call "D:\Program Files(x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat" (依实际安装路径修改路径);
5.重命名 C:/MinGW/msys/1.0/bin/link.exe 为link_renamed.exe (依实际安装选择路径),这一步是防止这个link.exe与vc的link.exe发生冲突,编译完成后可修改回来;
- 配置编译,双击msys.bat,转到FFMPEG源代码根目录下,可运行 ./configure --help查看编译配置选项,我使用的选项为:
静态库:./configure --enable-static --prefix=./vs2013_build --enable-debug --toolchain=msvc
动态库:./configure --enable-shared --prefix=./vs2013_build --enable-debug --toolchain=msvc
等待配置完成返回;
-
输入 make -j4编译(启用4线程,这样快点);
-
输入make install安装。
完成,此时生成的头文件及库已经在ffmpeg源代码下的vs2013_build目录下,使用这个库,即可在VS下单步进入FFMPEG函数内部。
image.png
ps:编译过程提示pkgconfig没有安装找不到路径之类的,可以去网上找一个pkgcong安装,但是我验证过不安装编译出来的库也是可以用。
参考:http://ffmpeg.org/platform.html#Microsoft-Visual-C_002b_002b-or-Intel-C_002b_002b-Compiler-for-Windows
http://www.cnblogs.com/xylc/p/3683203.html
网友评论