Chinaunix首页 | 论坛 | 博客
  • 博客访问: 996899
  • 博文数量: 829
  • 博客积分: 9980
  • 博客等级: 中将
  • 技术积分: 5020
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-29 14:06
文章分类

全部博文(829)

文章存档

2011年(1)

2008年(828)

我的朋友

分类: LINUX

2008-08-29 14:18:20

 
Strategy论文系统V1.0
Startprocess

MPlayer是linux中强大的万能播放器,但是MPlayer官方只制作了FC系列的rpm包
,而且FC每出一个新版本,官方就会少出一个旧版本的rpm包。

但是,可能你使用的OS不是FC系列,甚至,你还可能使用著windows,
那么?如何才能给你的电脑装上MPlayer这一强大的多媒体播放器呢?

下面,笔者就为大家详细讲述最全面的关于MPlayer编译的技术。

PART1
创建编译环境
{
你得有一个类unix的环境:

至少一个gcc,一个shell(推荐bash或ash),一个make,一套binutils——这是最基本的条件;

另外最好还有一系列自动化工具,比如automake,autoconf,libtool等等;以及一系列的shell程序,比如cp啦等等。为了能解压缩,你得有一个能解压缩原代码包的工具,比如winrar,7zip或者命令行上的gzip等。

其他软件:GTK ,GIMP,lame等。

如果你使用Linux,并且在安装时选择了包含上述内容的软件包,就ok了。要想检测是否有上述内容,请用rpm,浏览文件系统或“查找”的方法确认是否装有上述内容。如果没有,可以使用各种方法安装。请继续阅读PART2。

如果你使用其他UNIX,那么你需要按照你的系统的方式安装好上述软件包,并阅读PART2。

如果你使用Windows,那么你需要安装一个Cygwin或者MinGW:
<1.>如果你下载并选择安装cygwin,那么你需要下载其setup.exe,并进行漫长的等待,以便setup.exe能从网络下载并安装好整个开发环境,cygwin能提供一个shell环境,完整的linux基本库,Qt/Gtk库,以及许多命令行下的软件,它虽然效率不高,编译出来的程序运行起来也比较慢,但是它的环境比较完整,更像linux。一旦安装好,你需要确认哪些需要的东西已经安装,以便在后面的步骤中省略其安装过程。
<2.>如果你选择下载并安装MinGW,那么至少下面这些软件包据信是必须的:mingw-runtime,w32api,binutils,gcc,MSYS,msysDTK。另外笔者认为mingw32-make软件包对于编译过程也必不可少。安装过程如下:MSYS->mingw-runtime->w32api->gcc->mingw32-make->binutils->MSYS->msysDTK。MSYS共进行两次安装,第一次安装问要否配置的时候,键入n。然后接下来的东西通通都是解压缩后把里面的bin啊include啊那些东东拷贝到MSYS安装目录下的mingw目录里。第二次安装MSYS的时候一定要选是,并输入mingw目录的位置,msysDTK一定要与MSYS安装目录相同。
};

PART2
安装gtk和qt库(qt库是非必须的)
{
如果你使用Linux,这个非常好解决。安装系统的时候通通选上。这两个大东西笔者也不会编译安装,相信你在安装系统的时候已经安装了桌面。如果安装了gnome,那么一定会有gtk库;如果安装了kde,那么一定有qt库。并且安装时一定要记得选择gtk-devel系列软件包,以及qt-devel系列软件包。

如果你使用Windows,也不是那么难解决的,你可以到奇趣科技网站下载开放源代码版的qt开发库安装程序(一个超过50兆的巨大安装程序文件)。gtk确实有些困难,因为截止发稿为止,官方也没有出版Windows版的,不过笔者从非官方渠道弄到一个gtk开发库安装程序,还是最新版的呢!Windows版的QT库的安装说明请看PART5。
};

PART3
安装各种支持功能
{

如果你读完本节觉得你的系统中已装有下述各功能,便不必安装
若没有请往下读:

1e,下载DirectX7的头文件:

然后拷贝到include目录里去
在Linux里嘛。。。是被path的include
在Windows里嘛,应该是mingw/include
当然,你也可以使用wine的头文件:)

接下来我们讲怎么从源代码安装各种支持功能,
你得先把这些软件源代码包找到并下载回来...
喜欢rpm,apt或ports的请飘过...


2e,安装ogg(egg是鸡蛋,估计ogg是鹅蛋:)),vorbis和theora
这三个软件都可以从xiph.org找到

先安装鹅蛋:
解压缩libogg-X.X.X.tar.gz
cdlibogg-X.X.X
./configure--prefix=c:/mingw--disable-shared
make
makeinstall

然后安装vorbis
解压缩libvorbis-X.X.X.tar.gz
cdlibvorbis-X.X.X
./configure--prefix=c:/mingw--disable-shared
make
makeinstall

解下来安装theora
解压缩libtheora-X.X.X.tar.gz
cdlibtheora-X.X.X
./configure--disable-encode--prefix=C:/mingw--disable-shared
make
makeinstall

3e,安装freetype
解压缩libiconv-X.X.X.tar.gz
cdlibiconv-X.X.X
./configure--prefix=c:/mingw--disable-shared
make
makeinstall

解压缩freetype-X.X.X.tar.bz2
cdfreetype-X.X.X
./configure--prefix=c:/mingw--disable-shared
make
makeinstall

4e,安装zlib,libregif,libpng,libjpeg
先安装zib
解压缩zlib-X.X.X.tar.gz
cdzlib-X.X.X
./configure--prefix=c:/mingw
make
makeinstall

再安装libpng
解压缩libpng-X.X.X-config.tar.gz
cdlibpng-X.X.X-config
./configure--prefix=c:/mingw--disable-shared
make

再安装libjpeg
解压缩jpegsrc.v6b.tar.gz
cdjpeg-6b
./configure--prefix=/mingw/--enable-static
make
cp.libs/libjpeg.ac:/mingw/lib/
cpjpeglib.hjconfig.hjmorecfg.hc:/mingw/include/
makeinstall

最后,安装libregif
解压缩libregif-X.X.X.tar.gz
cdlibregif-X.X.X
./configure--prefix=c:/mingw
make
makeinstall

5e,安装lame,xvid及x264
首先得安装一个汇编语言(如果你系统上已经安装,那就绝对不要重复安装)
下载地址

解压缩nasm-X.X.X.tar.gz
cdnasm-X.X.X
./configure--prefix=c:/mingw
make
mkdirc:/mingw/man/man1
makeinstall

然后安装lame
解压缩lame-X.X.X.tar.gz
cdlame-X.X.X
./configure--prefix=c:/mingw--disable-shared--disable-decoder
make
makeinstall
可恶的lame弄了半天都弄不好5555其实不装也可以的win32codecs里带mp3解码的...

再安装xvid
解压缩xvidcore-X.X.X.tar.gz
cdxvidcore-X.X.X/build/generic
./configure--prefix=c:/mingw--disable-shared
make
makeinstall
mvc:/mingw/lib/xvidcore.ac:/mingw/lib/libxvidcore.a

x264得从svn下载,俺也不会...不过如果你下载下来了可以:
cdx264
./configure--prefix=/mingw--enable-avis-input--enable-pthread
make
makeinstall

6e,安装live软件包
网上的文章通通都是废物...
按天下文章一大抄的那篇文章根本找不到live库了
悄悄告诉你这个库可以从下列地址下载到:


一个叫live555,一个叫live2007
安装方法:
./genMakefiles
find.-name''Makefile''-execfix-makefile{}\;
gmake或make
然后把live目录拷贝到任何地方(譬如/usr/lib/live或/usr/lib)

windows上的有官方的编译方法:
比较复杂,就不再讲述了。

7e,安装libdvdcss库包请注意,使用该库包在某些国家或地区是违反著作权法的:(
安装方法不再详述
要看“全区DVD”,请自己编译安装该库包,
Linux用户比较爽,可以有rpm包直接装...
};

PART4
编译MPlayer
{
终于可以开始编译MPlayer了,好激动...
你需要先下载一个MPlayer的源代码包,官方最新版本的就行
当然你想当小白鼠试验试验cvs版、svn版的也行哦...

首先,应该下载一些解码包到win32(win32codecs)或codecs(linuxall)目录里,
呃...官方那么多库包,下载哪个捏?根据你的用途选择吧!反正笔者一直用自己组合的解码库包。
[如果你决定使用下面方括号里的configure命令行,请在MPlayer目录下新建一个release目录,并在其下面新建一个codecs目录,将解码包放到这个codecs目录里]

再解压缩这个源代码包,
然后cd进去
敲下面的命令
./configure--enable-runtime-cpudetection--enable-static--enable-win32--enable-real--enable-directx--enable-dshow--enable-largefiles--enable-gui--enable-freetype--enable-qtx-codecs--enable-qtx--enable-menu--enable-live--enable-vorbis--enable-xvid--language=zh_CN

方括号:[p.s如果你不介意的话(或者你在Windows上编译的话)不妨使用下面的configure命令行,使用该命令行会在当前目录下的/release目录里生成你想要的东西:
./configure--prefix=./release--enable-runtime-cpudetection--enable-static--enable-win32--enable-real--enable-directx--enable-dshow--with-codecsdir=./release/codecs--with-win32libdir=./release/codecs--with-reallibdir=./release/codecs--with-livelibdir=./release/codecs--enable-largefiles--enable-gui--enable-freetype--enable-qtx-codecs--enable-qtx--enable-menu--enable-live--enable-vorbis--enable-xvid--language=zh_CN]

make

这个时候,如果你运气足够好的话...MPlayer就已经编译好了,在该生成二进制软件的地方应该已经生成了二进制文件。

如果你在Linux上安装,或者你的Cygwin或MinGW需要长期使用,那么你不妨来个makeinstall,安装该软件。[如果使用方括号里的configure命令行,就会安装到当前目录下的release子目录里,所以推荐Windows用户使用方括号里的命令行]
如果你不是上述情况,你需要自己提取编译生成物,制作压缩包。或者使用配置时生成的文件来制作rpm软件包。或者使用方括号里的命令行,并把所有文件集中到一齐,制作压缩包或手工打制rpm软件包。
};

PART5
编译前端
{
如果你觉得MPlayer自己的GUI不够美观或不够好用。
如果你是在Windows下编译(极有可能由于某些原因无法编译出GUI)
这时候,你需要编译一个前端。

这里介绍一个很优秀的前端——smplayer(下简称:smp),这个软件每天会更新一个版本,功能十分强大,是笔者见过的最强大的MPlayer前端。

哈哈...前面安装QT库就是为了编译它:)

现分为两个部分介绍如何编译:

LINUXsystèm:
QT3:smp是在QT3环境下开发的,自然兼容性相当好,编译极为容易:
首先你得确保已经装了QT3开发库,其名为qt3-devel或libqt3-dev
解压缩下载的smp源代码压缩包并改名为smp然后依次执行下列各条指令,不要打括号及其中的中文:

cdsmp
make(如果这一步出错了,那一定是QTDIR变量没有设定为它应该指向的位置)
makeinstall
(这一步将把smp安装到/usr/local)

LINUXsystèm
QT4:首先你得确保已经装了QT4开发库,其名为qt4-devel或libqt4-dev
有些Linux发行版有单独的QT3支持软件包,你最好把他们也装上。
执行下列命令,不包括括号及其中的中文:

makeprep
make(如果这一步出错了,那一定是QT3里的qmake被QT4里的qmake代替,请使用makeQMAKE=qmake-qt4或makeQMAKE=/usr/share/qt4/bin/qmake这一步里的make)
makeinstall
(这一步将把smp安装到/usr/local)

QT3和QT4的区别:使用QT4,可以显示系统拖盘图标。
而在QT3下,除非你使用kde支持来编译,否则不能显示系统拖盘图标。(如果你使用QT3和kde,请使用makeKDE_SUPPORT=1代替make来编译。)

(注意:第一次启动时由于要搜索字体会较慢,打开后,进入首选项的对话框,把mplayer执行文件地址指向mplayer二进制可执行文件)


WINDOWSsystèm
在安装QT时,会问你关于MinGW的问题,选择已经安装MinGW并导航到安装目录。
依次打开开始->应用程序->QtbyTrolltechv4.2.3(Opensource)andselect
Qt4.2.3CommandPrompt.
在打开的命令提示符里,执行

cdc:\smp\src\
conv2qt4.bat

等提示符再次出现时,执行

make

完成后smp源代码目录的release子目录里会出现名曰smplayer.exe的文件,然后通过运行找出缺的库文件,并将这些库文件分别从mingw和qt/bin目录里拷贝到release目录里。

然后把release目录里的所有文件拷贝到mplayer目录(mplayer.exe所在目录)里,一个完美的mplayer就制作出来啦
(注意:第一次启动时由于要搜索字体会较慢,打开后,进入首选项的对话框,把mplayer执行文件地址改为./mplayer.exe)

};

END

测试环境:FedoraCore7(仅部分测试)
MicrosoftWindows2000SP2(仅部分测试)

按照本文章做,你应该知道自己在做什么
使用本文造成的一切后果读者自负,作者皆不承担任何责任及连带责任.

[本帖最后由大程在CD于2007-6-1422:36编辑]

[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer[原创]自己动手,亲自编译最完美的 MPlayer
阅读(589) | 评论(0) | 转发(0) |
0

上一篇:你学Linux是为了什么

下一篇:F7安装后感言

给主人留下些什么吧!~~