阅 读 文 章

以Debian方式编译MPlayer CVS

[来源:网上转载 () | 作者:网友() | 时间:2007-07-07 | 浏览:人次 ]

MPlayer是Linux下功能最健全的视频播放器之一:几乎所有现有视频格式的支持,mozilla浏览器在线播放支持。这两个功能几乎能满足我们的全部需要。然而,现在有两个困难:
1、debian官方没有MPlayer的deb包,却有mozilla-mplayer的deb包。没有MPlayer,浏览器插件自然没有用;
2、虽然MPlayer的官方现在提供1.0pre7try2的源码包。但是对于Debian Etch/Sid用户,这个版本的源码不打补丁无法用gcc 4.0成功编译,而且使用的是gtk1.2的库,中文显示相比gtk 2.0程序设置要复杂一些。
大家自然可以选择非官方的二进制包。但是根据官方文件,在ad_pcm.c文件中存在堆溢出问题,该问题影响所有pre7(含)以前的MPlayer。而非官方源似乎还没有pre7try2的二进制包。
好在MPlayer的CVS上的源码已经移植到gtk 2.0,而且能够使用gcc 4.0编译,也解决了堆溢出。而且作为Debian的用户,自然也不愿放弃dpkg工具。那么就请使用Debian方式编译自己的MPlayer CVS Debian Package吧!

零、前提:
请注意提示符:
# 代表需要root权限;
$ 代表普通权限即可;

一、准备工作:

1、获得MPlayer CVS:
这里你需要安装CVS:
# apt-get install cvs

2、获得MPlayer source:
CVS安装完成后,请登陆MPlayer的匿名CVS仓库:
$ cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer login
如果提示您输入密码,请留空直接回车,即可。登陆后
$ cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer co -P main
这一步取决于网络情况。对于国内用户,一般这一步相当漫长,请耐心等待代码下载完成。完成后您在当前目录下会获得一个main/子目录,里面就是MPlayer的源码。

3、获得FFmpeg
刚刚获得的mplayer源码不是全功能的,因为它缺少FFmpeg的libavcodec, libavformat和libavutil库,我们同样需要获得它:
$ cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg login
密码留空,直接回车,
$ cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co -P ffmpeg
这一过程也不会很快请耐心等待。完成后当前目录下会有ffmpeg/子目录。

4、制作完整的MPlayer源码目录:
我们需要将刚刚获得的ffmpeg目录里的三个子目录:libavcodec, libavformat,libavutil拷贝到main子目录下:
$ cp -r ffmpeg/libavcodec main/
$ cp -r ffmpeg/libavformat main/
$ cp -r ffmpeg/libavutil main/
我们还需要修改main/CVS/Entries文件,以使我们刚刚拷贝的3个目录的内容同样能够更新。将一下3行加到main/CVS/Entries文件的末尾:
D/libavcodec////
D/libavformat////
D/libavutil////
至此,我们完成了MPlayer源码目录的创建。将来在更新时,只需要在main目录下:
$ cvs -z3 update -dPA
即可。

5、获取其他必须品(codecs, skin...):
请到http://www.mplayerhq.hu/homepage/design7/dload.html下载Codecs和Skins。Codecs建议使用other binary codec packages里的all(all codecs for Linux x86 (Win32 .dll and Linux .so))。

二、开始编译:

1、获取Debian制作工具:
首先请确认你有完整的开发工具集:gcc, make, binutils等等。
制作Debian包我们需要dh-make和fakeroot。但是MPlayer已经提供了debian的编译环境,无须dh-make。我们只要获得fakeroot就行了:
# apt-get install fakeroot

2、准备Codecs:
请将获得的all-20050412.tar.bz2解压,并将目录重命名为codecs,然后将其移动或复制到/usr/local/lib/:
# tar jxvf all-20050412.tar.bz2
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 编译 方式 MPlayer 目录 CVS 需要 完成 更新 我们 源码

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.