天天看點

Fedora14下Mplayer安裝小結

       很多時間沒搞嵌入式linux的東西,最近又拾起了以前的東西,不過感覺有點生疏。特别是linux的開發環境,系統指令的使用。剛開始吧基本的虛拟機安裝配置好後,為了熟悉下linux的編譯規則,我打算安裝編譯一個mplayer播放器玩玩。雖然以前編譯過mplayer,也都通過了,不過大都忘了,這次編譯感覺還是很多問題,似乎還沒以前那麼順利,花了一兩天的時間折騰,總算有眉目。

Fedora14下Mplayer的安裝

1.安裝MPlayer,應先提供安裝環境,這樣能讓我們事倍功半。 首先檢查Linux系統中是否已經安裝了以下包,最好我們安裝虛拟機時選擇gnome這個開發包,裡面有我們安裝mplayer需要的工具,如gtk2-devel,glib2-devel,libpng,libpng-devel,gtk+,gtk+-devel以及GCC 編譯環境

2.下載下傳主程式:(官網下載下傳)

MPlayer-1.0rc2.tar.bz2(已經安裝成功)

下載下傳位址:http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc2.tar.bz2 

官方解碼器:all-20061022.tar.bz2

下載下傳位址:http://www.mplayerhq.hu/MPlayer/releases/codecs/all-20061022.tar.bz2 

官方win32_codes_all:windows-all-20061022.zip

下載下傳位址:http://www.mplayerhq.hu/MPlayer/releases/codecs/windows-all-20061022.zip 

皮膚:Abyss-1.6.tar.bz2

下載下傳位址:http://www.mplayerhq.hu/MPlayer/skins/Abyss-1.6.tar.bz2

字型:gb2312-ming.tar.bz2

下載下傳位址:http://www.mplayerhq.hu/MPlayer/contrib/fonts/chinesefonts/gb2312-ming.tar.bz2

3、安裝過程(請把你的終端打開)

a.安裝相應的解碼

進入主目錄後,以root身份安裝 ,這樣改變身份:在終端輸入su或者su root ,然後輸入密碼就ok啦,有沒有看到 $ 變成了 #

#mkdir /usr/lib/codecs

#mkdir /usr/lib/wincodecs

#tar jxvf all-20061022.tar.bz2

#mv all-20061022/* /usr/lib/codecs

#unzip windows-all-20061022.zip

#mv windows-all-20061022/* /usr/lib/wincodecs

b.安裝mplayer,指令如下

#tar jxvf MPlayer-1.0rc2.tar.bz2

#cd MPlayer-1.0rc2

#./configure --prefix=/usr/local/mplayer --enable-gui --enable-freetype --codecsdir=/usr/lib/codecs/ --win32codecsdir=/usr/lib/wincodecs/ --language=zh_CN --disable-ivtv --disable-alsa

注:

 ——prefix=/usr/local/mplayer 是安裝路徑

——enable-gui 安裝圖形化使用者界面

——enable-freetype 調節字型

——codecsdir=/usr/lib/codecs/

——win32codecsdir=/usr/lib/wincodecs 指定解碼位置

——language=zh_CN 中文

——disable-ivtv 屏蔽ivtv(若不屏蔽,make時将出現-o vo_ivtv.o vo_ivtv.c錯誤)

——disable-alsa(如果沒有就會出現snd_config_search_alias_hooks未定義的錯誤)

#make(如果make沒有通過,可以用指令make clean清除)

錯誤産生:

./configure 通過 無錯誤

make 時出錯 以下是出錯資訊

-lglib-2.0 -Wl,-z,noexecstack  -ffast-math   -lncurses -lpng -lz -lmng -lz -ljpeg -lungif -lasound -ldl -lpthread -lfreetype -lfontconfig  -lz -lbz2 -lpthread -ldl -rdynamic  -lm   

/usr/bin/ld: libvo/vo_gif89a.o: undefined reference to symbol 'QuantizeBuffer'

/usr/bin/ld: note: 'QuantizeBuffer' is defined in DSO /usr/lib/libgif.so.4 so try adding it to the linker command line

/usr/lib/libgif.so.4: could not read symbols: Invalid operation

collect2: ld returned 1 exit status

make: *** [mplayer] 錯誤 1

似乎關鍵在/usr/bin/ld: note: 'QuantizeBuffer' is defined in DSO /usr/lib/libgif.so.4 so try adding it to the linker command line

解決辦法:

産 生這個問題的原因是lib庫引用錯了.  QuantizeBuffer是libgif裡的東東, 但是卻引用成-lungif. 找到Makefile引用的地方, 把-lungif改成-lgif就可以了.位置在:MPlayer-1.0rc2目錄下包含的一個config.mak裡(大概是83行)。

#make clean ; make(重新make)

#make install

c.安裝皮膚,指令如下:

#tar jxvf Abyss-1.6.tar.bz2

#mv Abyss /usr/local/mplayer/share/mplayer/skins/

#cd /usr/local/mplayer/share/mplayer/skins/

#mv Abyss default

d.安裝字型:

# mkdir /usr/local/mplayer/share/mplayer/font/

#tar jxvf gb2312-ming.tar.bz2

#cd gb2312-ming/gbsn00lp16/

#cp * /usr/local/mplayer/share/mplayer/font/

4.測試運作,指令如下:/usr/local/mplayer/bin/gmplayer(使用不友善)

5、vim /etc/profile

加一行:PATH=$PATH:/usr/local/mplayer/bin

然後重讀:export PATH

6、此時可以用直接用mplayer或gmplayer

 注:此時運作有可能出現隻有圖像沒有聲音的情況

提示如下:音頻設定: 無法打開音頻裝置/dev/dsp: No such file or directory

解決方法如下:

#mknod /dev/dsp c 14 3

#chmod 666 /dev/dsp

這樣就正常了!!

啟動MPlayer,也有可能會出現如下這樣的錯誤:

"New_Face faild. Maybe the font path is wrong. please supply the text font file. ( ~/.mplayer/subfont.ttf )."

這時候我們用系統自帶的字型來代替.

# cd /usr/share/fonts/zh_CN/TrueType/

找其中一個字型檔案複制到目前使用者目錄的 .mplayer/ 目錄下

#cp gbsn00lp.ttf ~/.mplayer/subfont.ttf (其實随便一個ttf檔案也可以的)

這樣就解決了字型問題了.

繼續閱讀