windows平台MingW环境下编译FFMPEG及X264

1.安装MingW环境
下载页面:http://sourceforge.net/projects/mingw/files/找到文件mingw-get-inst-xxx.exe,我选的最新的安装文件:mingw-get-inst-20120426.exe
注意,下载完后该exe文件就是安装文件,安装时请选上所有的选项。安装过程可能需要几个小时。

安装yasm,下载页面为http://yasm.tortall.net/Download.html我的下载文件http://www.tortall.net/projects/yasm/releases/yasm-1.2.0-win32.exe,改名为yasm.exe
放入安装目录下:c:/mingw/bin/中

2.下载git的windows版本,放入mingw安装目录bin子目录下,我这里为: c:/mingw/bin/
下载地址http://msysgit.googlecode.com/files/Git-1.8.1.2-preview20130201.exe安装git,记住安装路径,我这里的git安装路径为:D:\Program Files\Git
第5步需要用到该git路径

3.下载安装pkg-config到c:/mingw/bin/目录
a. 下载http://ftp.acc.umu.se/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip
提取压缩包中文件改名为pkg-config.exe
注意如果该链接失效,可以打开父路径[http://ftp.acc.umu.se/pub/gnome/binaries/win32/dependencies/]查找类似的文件名
b. 下载http://ftp.acc.umu.se/pub/gnome/binaries/win32/glib/2.18/glib_2.18.4-1_win32.zip
提取压缩包中文件libglib-2.0-0.dll

c. 把前面a,b两步获取的文件放入mingw安装目录bin子目录下,我这里为: c:/mingw/bin/

4.下载安装vs2008,需要用到其环境
我下载了一个小巧的vs2008版本,下载地址如下
http://www.cr173.com/down.asp?id=52128

5.修改配置文件
a.修改文本文件C:\MinGW\msys\1.0\msys.bat,在最前面加入1行, 设置vs2008的环境变量:
call “D:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat”
注意:把这里的路径替换为您的vs2008安装路径
加入环境变量:

b.修改配置文件:C:\MinGW\msys\1.0\etc\profile,找到类似的行修改
注意这里设置了第2步安装的git的路径和第3步安装的pkg-config环境变量,路径都必须为linux格式的,并且盘符前要加上反斜杠
例如windows路径D:\Program Files\Git\bin变为了:/d/Program Files/Git/bin
我的配置如下:
if [ $MSYSTEM == MINGW32 ]; then
export PATH=”.:/d/Program Files/Git/bin:/usr/local/bin:/mingw/bin:/bin:$PATH”

if [ -z "$PKG_CONFIG_PATH" ]; then
export PKG_CONFIG_PATH=/mingw/lib/pkgconfig:/usr/local/lib/pkgconfig
fi

if [ -z "$PKG_CONFIG" ]; then
export PKG_CONFIG=pkg-config.exe
fi

else
export PATH=”.:/usr/local/bin:/bin:/mingw/bin:$PATH”
fi

6.下载安装sdl,需要1.3或者1.2的版本
http://www.libsdl.org/tmp/,选择一个您要的版本
我选的是SDL-1.3.0-6208.zip
a.解压,可以解压到文件夹C:\MinGW\msys\home\xxx下,xxx是您的windows用户名
b.打开C:\MinGW\msys\1.0\msys.bat,进入MinGW命令行环境
cd SDL-1.3.0-6208
./configure –prefix=/c/mingw
make
make install

7.git下载最新的ffmpeg
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
你也可以自己下载所喜欢的版本,解压到C:\MinGW\msys\1.0\home\xxx目录下,xxx是你的windows用户名
我下载的是http://www.ffmpeg.org/releases/ffmpeg-0.9.2.tar.gz

8.官网下载x264,并编译x264
cd ffmpeg
git clone git://git.videolan.org/x264
cd x264
./configure –enable-static –prefix=/c/mingw
make
make install
注意,需要安装其他的库的方法类似

9.编译安装ffmepg
./configure –enable-yasm –disable-static –enable-shared –enable-gpl –enable-libx264 –prefix=/home/q/ffmpeg9
注意,这里你需要修改–prefix后面的路径为你自己的路径
make
make install

10. 编译成功后,–perfix指定的目录下就有生成ffmpeg的lib和include以及dll文件
你还需要在C:\MinGW\bin目录下拷贝一个dll,拷贝pthreadGC2.dll,和其他ffmpeg的dll放在同一目录。

后记补充:
笔者遇到,过一段时间后,打开C:\MinGW\msys\1.0\msys.bat后,很多命令,例如ls, rm等,都无法执行并无法编译,这是应为windows下的环境变量被一些其他软件的安装或者杀毒软件等修改了。只需要【每次】进入命令行环境后,再在命令行执行以下命令,增加环境变量即可:
export PATH=”/c/mingw/bin:/c/mingw/msys/1.0/bin:$PATH”

回复

你的邮件地址不会被公开(Your email address will not be published.) Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>