||
Madplay移植
1.实验目的
掌握Madplay移植方法。
2.实验设备
硬件: PC机 1台 TQ2440开发板
软件: Fedora-15操作系统(RedHat Linux 9.0操作系统)
嵌入式Linux开发环境
madplay-0.15.2b.tar.gz
libid3tag-0.15.1b.tar.gz
libmad-0.15.1b.tar.gz
zlib-1.2.3.tar.gz
3.实验内容
在PC机上配置和编译Madplay,并使用Madplay播放mp3。
4.实验步骤
(1)准备源代码
可以到:http://sourceforge.net/project/showfiles.php? group_id=12349
下载madplay-0.15.2b. tar.gz源代码和相关依赖包:madplay-0.15.2b.tar.gz、libid3tag-0.15.1b.tar.gz、libmad-0.15.1b.tar.gz
另外,还需要zlib库,请到http://www.gzip.org/zlib/上下载。目前最新版本是zlib-1.2.3,下载软件包zlib-1.2.3.tar.gz。
(2)安装zlib-1.2.3
新建目录install,作为库文件的安装路径。解压zlib-1.2.3.tar.gz,在当前目录下生成的zlib-1.2.3目录就是zlib-1.2.3源代码所在路径。
#mkdir install
#tar xzvf zlib-1.2.3.tar.gz
编译zlib-1.2.3。进入zlib-1.2.3目录,在交叉编译时需修改Makefile文件的CC=arm-linux-gcc
prefix=$(PWD)/../install
然后编译并安装:
#make
#make install
(3)编译安装libid3tag-0.15.1b
解压libid3tag-0.15.1b.tar.gz,在当前目录下生成的libid3tag-0.15.1b目录就是安装目录。
#tar xzvf libid3tag-0.15.1b.tar.gz
使用configure命令配置库编译选项,包括C编译器、编译选项、链接选项和安装路径等。
在PC机上使用:
#./configure
用ARM编译工具交叉编译libid3
#./configure --host=arm-linux --enable-static --disable-shared --disable-debugging --prefix=$INSTALLPATH
编译并安装库,将编译好的库安装到指定目录下。
#make
#make install
(4)编译安装libmad-0.15.1b
解压libmad-0.15.1b.tar.gz,在当前目录下生成的libmad-0.15.1b就是安装路径。
#tar xzvf libmad-0.15.1b.tar.gz
使用configure命令配置库编译选项,包括C编译器、编译选项、链接选项和安装路径等。
在PC机上使用:
#./configure
用ARM编译工具交叉编译libmad
#./configure --host=arm-linux --enable-static --disable-shared -disable-debugging --prefix=$INSTALLPATH
编译 #make
此时编译出现错误,如下所示:
将Makefile中129行左右的“CFLAGS = - Wall –march=i486 –g –O –fforce-mem –fthread-jumps …” 修改为:“CFLAGS = - Wall –march=i486 –g –O –fthread-jumps …”再次编译,通过。
安装库,将编译好的库安装到指定目录下:
#make install
(5)编译安装madplay-0.15.2b
解压madplay-0.15.2b.tar.gz,在当前目录下生成的madplay-0.15.2b就是安装路径。
#tar xzvf madplay-0.15.2b.tar.gz
使用configure命令配置库编译选项,包括C编译器、编译选项和链接选项等。
在PC机上使用:
#./configure
用ARM编译工具交叉编译libmad
#./configure --host=arm-linux --enable-static --disable-shared --with-pic --disable-debugging
编译madplay,当前目录下会生成madplay文件。
#make
(6)播放mp3
使用NFS方式调试或者将生成的madplay添加到文件系统中,重新下载文件系统。使用madplay播放mp3文件。
# ./madplay music.mp3