windows Mingw 编译 mplayer 日记

1,windows 下安装mingw 环境,上百度搜索mingw即可,我是下了一个mingw-install的exe 文件,运行自动安装完成 。--成功

2,下载mplayer 源文件官网 : http://www.mplayerhq.hu/ ,下载页: http://www.mplayerhq.hu/design7/dload.html,也可以svn,下载完后还要下载 ffmpeg 源码(有提示的)

3,看资料 http://blog.csdn.net/chief1985/article/details/2857134 里说可以参考这个: http://bbs.chinavideo.org/viewthread.php?tid=1897&extra=page%3D1,这里提示加SDL到MinGW编译环境,按里面照做了.

4,报[ffmpeg/libpostproc/libpostproc.a Error 2 的错,下载libpostproc.dll 放入MinGW/lib 下.....还是报错....细看是make 时出错,进入ffmpeg/libpostproc/看makefile:include $(SUBDIR)../config.mak,去看mplayer 的config.mak,还是不行。。。。,到第二天来了再搞,又报另一个错误了,不知道是在这个前还是在这个后,报的:[libao2/dsound.o] Error 1 , 上面有什么 dsound.h not found ... 之类的,重新加环境变量:MINGW_HOME=L:\MinGW\bin,Path=%MINGW_HOME%;......,C_INCLUDE_PATH=mingw32/4.6.1/include;C:\DXSDK\Include; 重新./configure ;make;又报:library.bak:97 missing sepertor .stop
make: *** [ffmpeg/libpostproc/libpostproc.a] Error 2 错误,继续找原因.网上说是分离器出错,找到提示错误的那行,在前面加一个TAB符,make。这个问题OK,下一步又报什么vcodec.mak:197: No such config : xxx .stop. 去那一行,注释掉。OK,make。下一步,很多类似的错,都屏蔽,我看了一下都是什么flash ,png等的 config 没有,注释了应该就不支持了吧。大概十几个地方,改好后又有 libavcodec/exr.c:33:18:fata error : zlib.h : no such file or directory,下载zlib: http://zlib.net/,放入mingw的include 和 lib下 ,再make,还是出错,后发现mingw环境变量出错,改正确make clean,再make....还是不行,换方法,继续搜索

5.搜索到:1. http://blog.csdn.net/moodytong/article/details/5895632
2. http://space.bilibili.tv/61886/1065.html
3. http://blog.chinaunix.net/uid-20718335-id-3035492.html
4. http://www.ffmpeg.com.cn/index.php/Ffmpeg%E5%BF%AB%E9%80%9F%E5%AE%89%E8%A3%85
几个网站,以第一个为主,按步骤一步步来,遇到几个问题:
1.zlib无法按上面所讲的安装,后不下载zlib-1.2.5.tar.bz2,下载zlib125.zip,再按 http://blog.chinaunix.net/uid-20718335-id-3035492.html里所用的方法编译。
2.xvid不能安装xvid,报一个错:cc1.exe: error: unrecognized command line option '-mno-cygwin',进它的configure 的文件,把 -mon-cygwin 删除,重新编译,OK
3.pkg-config的安装
    如果mingw中没有安装pkg-config,则需要安装, 否则在./configure时会出错,安装方法如下:
下载
http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.4-1_win32.zip
http://ftp.acc.umu.se/pub/gnome/binaries/win32/dependencies/pkg-config-0.26-1.zip
把glib_2.18.4-1_win32.zip中的libglib-2.0-0.dll与pkg-config.exe放在mingw中的相应目录中.
设置环境变量
在mingw中输入命令:export PKG_CONFIG_PATH=:/usr/local/lib/pkgconfig
/usr/local/lib/pkgconfig为*.pc文件所在目录。

4../configure mplayer 时报:yasm not found, http://yasm.tortall.net/releases/Release1.2.0.html,下载最新的yasm-xxx-win32.exe改名为yasm.exe 并复制到%MinGW%\bin下.重新./configure,OK
5.make,又出现:library.bak:97 missing sepertor .stop ,按老方法解决,make,又报找不到 CONFIG_PCM_ALAW_DECODER ....,这次搜索mplayer 包含CONFIG_PCM_ALAW_DECODER的文件,结果在config.h里有:CONFIG_PCM_ALAW_DECODER 1,把它的1改为0,直接再make,这个问题OK,等待....,CONFIG_PCM_ALAW_ENCODER 0报错,改为1,make,又报CONFIG_PCM_ALAW_ENCODER 错,再把它改回0,make,过一会又报CONFIG_PCM_ALAW_ENCODER 出错,再改为1,make,又OK了,他母亲的......,先不管怎么回事,编译出来再说,
5,这回成功了!!原来是下载的mplayer 版本不对,重新下载 http://fossies.org/unix/misc/ 下的: http://fossies.org/unix/misc/MPlayer-1.1.tar.gz
按照 http://blog.csdn.net/moodytong/article/details/5895632里的方法安装环境后直接编译就行了!

猜你喜欢

转载自wuzijingaip.iteye.com/blog/1707213