今天為了測試EVB板的音頻,我把Madplay移植到了嵌入式開發板。
PC:Linux-2.6.18
SourceCode:libid3tag-0.15.1b.tar.gz zlib-1.1.4.tar.gz libmad-0.15.1b.tar.gz madplay-0.15.2b.tar.gz
申明:
1.本次移植工作的工作目錄為/home/mad/ (可選擇任意目錄)。
2.本次移植工作的arm開發平台已搭建,即arm-linux交叉編譯工具的已安裝,交叉編譯工具的目錄為/usr/local/arm/2.95.3/bin。
步驟:
1.將上述sourcecode在工作目錄下解壓,並創建一個文件夾lib放置編譯後的文件。
2.進入zlib解壓後的目錄,移植到arm平台需要修改configure文件
第24行:
AR=${AR-"ar rc"}
改為
AR=${AR-"/usr/local/arm/2.95.3/bin/arm-linux-ar rcs"}
第25行
RANLIB=${RANLIB-"ranlib"}
改為
RANLIB=${RANLIB-"/usr/local/arm/2.95.3/bin/arm-linux-ranlib"}
第63行
cc=${CC-gcc}
改為
cc=${CC-/usr/local/arm/2.95.3/bin/arm-linux-gcc}
3.然後進行以下操作
./configure --prefix=/home/mad/lib
make
make install
4.進入libid3tag解壓的目錄,運行如下操作進行交叉編譯
./configure --host=arm-linux --prefix=/home/mad/lib --disable-shared CPPFLAGS=-I/home/mad/lib/include LDFLAGS=-L/home/mad/lib/lib
make
make install
5.進入libmad解壓後的目錄,運行如下操作進行交叉編譯
./configure --host=arm-linux --prefix=/home/mad/lib --disable-shared
make
make install
6.進入madplay解壓後的目錄,運行如下操作進行交叉編譯
./configure --host=arm-linux --prefix=/home/mad/lib --disable-shared --enable-static CPPFLAGS=-I/home/mad/lib/include LDFLAGS=-L/home/mad/lib/lib
make
7.將生成的madplay拷貝到開發板上運行./madplay Nobody.mp3,即可聽到音樂
注意:madplay默認使用的音頻設備為/dev/dsp,而對於有多少音頻設備的用戶,可以通過修改madplay目錄下的audio_oss.c的第78行
相關鏈接:
1. madplay http://www.underbit.com/products/mad/
本文出自 “Scalpel00” 博客,請務必保留此出處http://scalpel00.blog.51cto.com/1071749/251278