使用VisualStudio2013编译ffmpeg3.1全过程

来源:互联网 发布:mysql的好处 编辑:程序博客网 时间:2024/04/30 11:13
1. 下载YASM:http://yasm.tortall.net/Download.html
    选择win64.exe(如果你的电脑是64位)或win32.exe(如果你的电脑是32位)。本人是64位。
2. 下载并安装MSYS2:http://msys2.github.io/ 我将其安装在c盘根目录下,即 C:\msys64\
    安装完毕后,需要再使用msys2/usr/bin下的pacman安装几个包(make、gcc、diffutils)。打开cmd.exe,cd至pacman的目录,然后敲入以下命令,进行在线安装:
    pacman -S make
    pacman -S gcc
    pacman -S diffutils
3. 将第一步中下载的YASM***.exe重命名为YASM.exe,并将其拷贝至C:\msys64\usr\bin目录下。
4. 到C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts目录下,运行“VS2013 开发人员命令提示”,启动命令行工具,在其中
   输入C://msys64/msys2_shell.cmd 并回车运行,进入msys2控制台。
5. msys2控制台中输入 which cl,以确定其路径为 /c/Program Files (x86)/Microsoft Visual Studio 12.0/VC/BIN/cl    (用于编译32位的ffmpeg)
6. msys2控制台中输入 which link,以确定其路径为:/c/Program Files (x86)/Microsoft Visual Studio 12.0/VC/BIN/link (用于链接32位的ffmpeg)
7. 在msys2控制台中,输入命令:cd E://ffmpeg 设定ffmpeg的源码为工作目录。(E://ffmpeg是我下载的ffmpeg源码的存储路径)
8. 输入以下指令并回车,以在当前ffmpeg源码目录下新建Output/x86目录。
    mkdir -p Output/x86
9. 输入./configure --help,可以查看编译选项及其意义。
10. 依次输入以下指令编译32位的ffmpeg静态库:
cd Ouput/x86
../../configure --toolchain=msvc --arch=x86 --enable-static --enable-yasm
make
11. 在Output/x86目录下,生成了一系列文件和目录,可以在libavcodec, libavdevice等目录下找到***.a文件,这就是生成的静态库。

12. 如果想要生成64位的库,从上述第4步重新开始,只是在4中要运行“VS2013 x64 本机工具命令提示”,启动命令行工具(进入64位编译环境),其他基本一致,主要区别是,在8中需要创建Output/64目录,后面也是cd到这个目录后进行configure,在第10步中,输入configure命令时,将 --arch=x86改为 --arch=x86_64。

参考链接:
http://ffmpeg.org/platform.html#Microsoft-Visual-C_002b_002b-or-Intel-C_002b_002b-Compiler-for-Windows
https://trac.ffmpeg.org/wiki/CompilationGuide/MSVC#CompilingFFmpegwithexternallibraries
https://trac.ffmpeg.org/wiki/CompilationGuide/WinRT#Windows10x86
https://pracucci.com/compile-ffmpeg-on-windows-with-visual-studio-compiler.html
0 0
原创粉丝点击