ffmpeg在Linux下的编译相当简单,只需要configure ,再make 一下就可以了。
需要动态库的话在configure 后面加一个 --enable-shared 就ok了。
但在windows下就不是很容易了,在网上搜索了一下各种在windows下编译的方法,大多千篇一律,而且步骤繁琐,有的需要依赖很多库。而我只想像Linux下那样单纯方便的编译出ffmpeg里的几个库,是否有简单的方法呢?
下载cygwin,下载地址:https://cygwin.com/
我下载的是setup-x86_64.exe
然后安装,安装步骤可以参考这个,写的比较详细了:http://jingyan.baidu.com/article/6b97984d83dfe51ca2b0bf0e.html
记得要选择安装gcc和make的相关包,不然运行起来可能没有gcc命令和make命令;
如果你实在是不知道怎么安装make的命令,等cygwin安装好了,手动安装make工具,方法如下:
在官网上去下载make-3.8.1.tar.bz2 :http://gnu-make.soft32.com/
打开cygwin,类似于一个Linux的终端,cd /cygdriver 你就可以看到你电脑上的各个盘,到你下载make-3.8.1.tar.bz2 的地方,解压安装make
tar xvf make-3.8.1.tar.bz2
cd make-3.8.1
./configure
./build.sh
生成了make.exe
cp make.exe /bin/
此时即可用make命令了。
一切准备好,回到编译ffmpeg的路上来。在cygwin里和linux下的编译步骤几乎一样。
我这里以编译 ffmpeg-2.1.8 为例,解压;
./configure --enable-shared --disable-static
我这里会提示:
所以我又从头装了一遍cygwin,选中yasm包,再重新此步骤。
据说编译windows下的库必须要带个参数 --enable-memalign-hack
$ ./configure --enable-shared --disable-static --enable-memalign-hack
然后make
就这么简单,你可以在ffmpeg-2.1.8/ 目录下找你需要的库文件
另一种方法:MingGW
MinGW下载地址:http://download.csdn.net/source/2988856
mingw32_gcc441_20100504 这一版本的mingw带了yasm sdl 等相关的库,无需再配。
./configure --enable-shared --disable-static --enable-memalign-hack
make