寫給初學者的mplayer安裝過程與拾遺 (適合不同版本的Linux)
作者: qwent 新州隱士
e-mail:
[email protected]
日期: 2006.03.13
以前我們安裝mplayer的時候,往往參考了網上的教程,可是有些教程只是注重在自已本機的運行環境,可以正常安裝.但是在初學者電腦裡,情況就不一樣了.甚至有些人不負責任,寫的教程誤導了初學者.之前我也走了不少彎路,但是從彎路中我慢慢弄清楚了安裝與分析過程.以下就是我的安裝過程.個別語句引用了其他的優秀教程,在此基礎上,注重了安裝遺留問題的分析與解決.希望對本文的轉載的同時,保留作者的署名.
(一) 安裝過程
MPlayer,是一種功能強大的跨平台優秀媒體播放器.本人參考了網上的一些安裝方法,在此基礎上,按照自己的經驗總結出來的.下面我以Fedora core 4安裝mplayer.
安裝mplayer需要四個包的安裝:主程序,皮膚,codecs以及wincodecs(win32)。這四個程序都可以從mplayer官方網站下載:www.mplayerhq.hu 我下載的程序分別是以下四種:
src: MPlayer-1.0pre7try2.tar.bz2
SKIN: Blue-1.4.tar.bz2
codecs: all-20050412.tar.bz2
windows-all-20050115.zip
把它放在/usr/software/mplayer目錄下.
安裝時先安裝編碼包,mplayer的編碼包須安裝在/usr/lib/codecs/和/usr/lib/wincodecs(win32)中。
[root@fc4 /]# cd /usr/software/mplayer
[root@fc4 mplayer]# tar vjxf all-20050216.tar.bz2
[root@fc4 mplayer]# mv all-20050216 /usr/lib/codecs
[root@fc4 mplayer]# chmod 644 /usr/lib/codecs/*
[root@fc4 mplayer]# chown root.root /usr/lib/codecs/*
[root@fc4 mplayer]# unzip windows-all-20050115.zip
[root@fc4 mplayer]# mv windows-all-20050115 /usr/lib/wincodecs 或者 # mv windows-all-20050115 /usr/lib/win32
[root@fc4 mplayer]# chmod 644 /usr/lib/wincodecs/* 或者 # chmod 644 /usr/lib/win32/*
[root@fc4 mplayer]# chown root.root /usr/lib/wincodecs/* 或者 # chown root.root /usr/lib/win32/*
這樣解碼包就安裝好了,下面開始安裝mplayer主程序
[root@rh9 mplayer]# bzip2 -cd MPlayer-1.0pre7try2.tar.bz2 tar xvf -
[root@rh9 mplayer]# cd MPlayer-1.0pre7/
接下來是配置准備編譯,是最關鍵也是最困難的。關於配置首先要確定幾個rpm的包是否安裝了,它們是:gtk+-1.2.10, gtk+-1.2.10-devel, glib-1.2.10, glib-1.2.10-devel,可以下載也可以在Fedora Core 4的第四張安裝盤裡找到安裝。
編譯mplayer源碼包時FC4默認安裝的GCC4.0不可以用,而是要安裝GCC3.2即這兩個包:compat-gcc-32(CD3)和compat-gcc-32-c++ (CD4)
確認上面這幾個包已經安裝後,可以開始配置編譯了.
以下這個是我自己的機上設置的。注意,如果不是用FC4,最後一個選項 --cc=gcc32 可以不用,如果gcc版本的比較低,無法通過配置.最好升級到gcc 3.2.x以上.
[root@fc4 MPlayer-1.0pre7try2]# ./configure --enable-gui --enable-largefiles --enable-menu --prefix=/usr --with-codecsdir=/usr/lib/codecs/ --with-win32libdir=/usr/lib/wincodecs/ --confdir=/etc/mplayer --cc=gcc32
configure後面的參數是為了使用圖形界面(即皮膚),以及配置文件位置等等設置的。需要注意的是,最後--cc=gcc32一定需要,是調用 gcc3.2來編譯程序。否則會調用GCC4.0來編譯,mplayer是不能用gcc4.0編譯的。配置成功後,後面就一馬平川了!
[root@fc4 MPlayer-1.0pre7try2]# make
[root@fc4 MPlayer-1.0pre7try2]# make install
如果前面的設置等都正確,這裡就不會再有錯誤了。現在mplayer已經裝到了你的linux裡,下面要安裝皮膚即圖形界面。
然後回到原來的目錄。
[root@fc4 MPlayer-1.0pre7try2]# cd ..
[root@fc4 mplayer]# bzip2 -cd Blue-1.4.tar.bz2 tar xvf - -C /usr/share/mplayer/Skin/
[root@fc4 mplayer]# mv /usr/share/mplayer/Skin/Blue/ /usr/share/mplayer/Skin/default/
這裡安裝了剛剛的那個blue皮膚並將它設為默認的,安裝完以後你也可以找到各種mplayer的皮膚,不用解壓直接放到/usr/share/mplayer/Skin/下就可以在mplayer的界面上修改皮膚了。
然後可以在桌面上放置一個mplayer的圖標,在桌面上右鍵選擇啟動器(針對gnome),名稱為mplayer;命令為 /usr/bin/gmplayer,而mplayer的默認圖標位置在/usr/share/pixmaps/mplayer- desktop.XPm 或者用命令 # cp /usr/share/pixmaps/mplayer-desktop.xpm /root/Desktop/
(二) 故障分析與解決
安裝完後,我們啟動MPlayer,有可能會出現如下這樣的錯誤:
"New_Face faild. Maybe the font path is wrong. please supply the text font file. ( ~/.mplayer/subfont.ttf )."
這時候我們用系統自帶的字體來代替.
[root@fc4 mplayer]# cd /usr/share/fonts/zh_CN/TrueType/
找其中一個字體文件復制到當前用戶目錄的 .mplayer/ 目錄下
[root@fc4 TrueType]#cp gbsn00lp.ttf ~/.mplayer/subfont.ttf
這樣就解決了字體問題了.
(三) 注意問題
卸載mplayer只需在剛剛由MPlayer-1.0pre7try2.tar.bz2解壓出來的MPlayer-1.0pre7try2目錄下運行 make uninstall即可。所以,這個解壓出來的文件夾不要刪除,如果刪除了,卸載的時候也可以到安裝目錄下直接刪除,linux下沒有注冊表的概念放心刪除!
(四) 安裝總結
1. 安裝的最初的配置是最重要的.選項並不是越多越好的.只要可以實現播放各種格式,包括rmvb和windows下各種媒體類型就行了.因為windcodecs和codecs已經包含了常用的格式了.
2. 要多留意在./configure過程中的錯誤或者沒有符合的依賴關系.有時候無法進行make.就是在這一步出了問題.如果不能進行make,一般有提示的,其日志在config.log中.還有一個辦法,就是通過管道輸出到文本文件中,可以了解到安裝的過程. 如 # ./configure tee tmp.txt .這樣就可以分析錯誤了.
3. 在make的安裝過程中,往往有好多警告,這並不是錯誤,而是編寫程序的人沒有注意到的問題,如變量定義不恰當等,並不影響程序的安裝.
4. 如果安裝過程中不能順利進行,要想還原到最初源代碼狀態. 使用命令 # make distclean 清除之前的配置,再進行新的配置.
(四) 安裝總結
1. 安裝的最初的配置是最重要的.選項並不是越多越好的.只要可以實現播放各種格式,包括rmvb和windows下各種媒體類型就行了.因為windcodecs和codecs已經包含了常用的格式了.
2. 要多留意在./configure過程中的錯誤或者沒有符合的依賴關系.有時候無法進行make.就是在這一步出了問題.如果不能進行make,一般有提示的,其日志在config.log中.還有一個辦法,就是通過管道輸出到文本文件中,可以了解到安裝的過程. 如 # ./configure tee tmp.txt .這樣就可以分析錯誤了.
3. 在make的安裝過程中,往往有好多警告,這並不是錯誤,而是編寫程序的人沒有注意到的問題,如變量定義不恰當等,並不影響程序的安裝.
4. 如果安裝過程中不能順利進行,要想還原到最初源代碼狀態. 使用命令 # make distclean 清除之前的配置,再進行新的配置.