分类: 项目管理
2010-11-27 18:29:33
1.安装MSys
到
/showfiles.php?group_id=2435下载文件:
bash-3.1-MSYS-1.0.11-tar.bz2
msysCORE-1.0.11-2007.01.19-1.tar.bz2
msysCORE-1.0.11-2007.01.19-1.tar.bz2下載鏈接:
bash-
3.1-MSYS-1.0.11-tar.bz2下載鏈接:
解压msysCORE-1.0.11-2007.01.19-1.tar.bz2,比如解压到D:\msys(以下内容都使用该路径描述)。
解压bash-3.1-MSYS-1.0.11-tar.bz2,产生一个名为bash-3.1的目录,在该目录下有一个子目录名为bin,其 他
的目录不需要关心。复制bin目录中的所有文件到D:\msys\bin,提示是否要覆盖sh.exe的时候,选择是。
到“D:\msys
\postinstall”目录下执行pi.bat,在出现的提示中输入n回车后,按任意键退出即可。
如果你不输入N的话就输入两次Y,最后把c:\msys\mingw 输入即可
。如果输入N的话,要打开D:\msys\etc\fstab.sample把它重命名为fstab 并用nodepad打开编辑,把c:\mingw
\mingw 改成d:\msys\mingw即可。最后配置PATH,在系统的环境配置中添加d:\msys\bin。
2.安装MinGW
同样是到
/showfiles.php?group_id=2435下载文件:
binutils-2.17.50-20060824-1.tar.gz
gcc-core-3.4.5-20060117-1.tar.gz
gcc-g++-3.4.5-20060117-1.tar.gz
w32api-3.9.tar.gz
mingw-runtime-3.12.tar.gz
把它们全部解压到D:\msys\mingw。
或者直接下载MinGW.exe
文件 下载好按步骤安装,选择安装的组件最好都选上啦。不过安装目录一定要选择d:\msys\mingw 别的路径它找不到。
3.修改“msys.bat”
用文本编辑器打开D:\msys\msys.bat, 安装微软的Visual
Studio或是Visual
C++。把下面一行加到msys.bat的最前面,把路径替换成机器上vcvars32.bat实际存在的路径,比如我的在“c:\Program
Files\Microsoft Visual Studio .NET 2005\Vc\bin”,于是就添加:
call
"c:\Program Files\Microsoft Visual Studio .NET 2005\Vc\bin\vcvars32.bat"
4.svn
下 载TortoiseSVN,安装好之后,在d:\ffmpeg右击,选择SVN check out,
第一行目录选择svn://svn.mplayerhq.hu/ffmpeg/trunk 然后确定。这样就得到最新的SVN。
但由于SVN只针对UNIX系统做的。所以无法GCC对最新的SVN编译。会报错:192 PR command not found.
解决方法一:不用最新的SVN版本。因为即使用了最新的MinGW5.1.exe还是有这样的错误。 windows下还是无法编译最新的SVN代码。我这有07年3月的版本是可以用的。需要的可以索要。
解决方法二:下载
并且解压缩出来,把bin下的内容拷贝到MSYS下,因为MSYS缺少COREUTILS所以报错 PR command not found。
改完后你会发现可以编译了,但是make的时候又出错了。怎么办呢?去sourceforge网站上下载make-3.81-MSYS- 1.0.11-2.tar.bz2,替换掉原来的make.exe文件即可 (搜索了一天时间,提供出来免得大家走歪路!)
这样就可以用最新的SVN版本来进行编译了。
5.测试
打开msys.bat,输入cd空格/d/ffmpeg,路径变化后,然后输入./configure空格--enable-memalign- hack,回车!
如果不报错,那么再输入make.
6.第三方插件
根据以上5个步骤就已经可以得到ffmpeg.exe了,但没有加入声音,以及对其他格式支持的也不够好。
现在开始加入lame,就是声音。到下
载已经编译的mp3lame库(可以向我索要),解压出来后分别拷贝到你安装好的mingw目录下的相对目录里。在传递配置参数时要加入
“--enable-libmp3lame” ,即使用以下命令配置:
./configure --enable-static
--disable-shared --enable-memalign-hack --enable-libmp3lame
然后加入mp4的格式的支持:
然后加入3GP的支持:
编译的时候加上--enable-amr_nb --enable-amr_wb参数就行,根据编译系统的提示,所以我们得下载一
些编译3gp所需得文件。
解
压以后把里面的文件都拷贝到libavcodec/amrwb_float
解
压以后把里面的文件都拷贝到libavcodec/amr_float
另附
海狗哥的“MinGW下简单编译FFmpeg”:http://jeremiah.blog.51cto.com/539865/126804
FFMPEG工程组--在Windows下编译ffmpeg完全手册:%3D1