本文共 1970 字,大约阅读时间需要 6 分钟。
madplay 音乐播放器移植步骤 madplay版本: madplay-0.15.2 交叉编译器版本: arm-linux-gcc 3.4.1 操作系统平台: Linux -- Red Hat 9.0 开发板平台: Arm -- FL2440 准备源码包: 下面给出了两个网站,分别是madplay和zlib库的源码网址 madplay:http://sourceforge.net/projects/mad/files/ zlib库 :http://www.zlib.net/ madplay-0.15.2b.tar.gz libmad-0.15.1b.tar.gz,libid3tag-0.15.1b.tar.gz zlib-1.1.4.tar.gz 建立两个文件夹,一个存放源码,一个存放安装文件 在home下,mkdir两个文件夹:madplay-src madplay 依次解压四个源码包到madplay-src目录下: tar xzvf XXXXXXXXX 1. 编译zlib-1.1.4 首先配置configure 文件 #./configure --prefix=/home/madplay 修改Makefile CC=arm-linux-gcc AR=arm-linux-ar rc RANLIB=arm-linux-ranlib #make #make install 2. 编译libid3tag #./configure CC=arm-linux-gcc --host=arm-linux --prefix=/home/madplay CPPFLAGS=-I/home/madplay/include LDFLAGS=-L/home/madplay/lib 2 #make #make install 3. 编译libmad #./configure CC=arm-linux-gcc --host=arm-linux --prefix=/home/madplay CPPFLAGS=-I/home/madplay/include LDFLAGS=-L/home/madplay/lib #make #make install 4. 编译madplay #./configure CC=arm-linux-gcc --host=arm-linux --prefix=/home/madplay CPPFLAGS=-I/home/madplay/include LDFLAGS=-L/home/madplay/lib #make 到这就结束了,可以不用make install 在madplay-0.15.2b目录下生成madplay的可执行文件,查看一下需要的动态库 #arm-linux-readelf -d madplay 输出运行时所需的动态库:libmad.so.0, libid3tag.so.0, libm.so.6,libc.so.6 将后两个文件从lib拷贝到根文件系统的/usr/lib目录下(先查看,如果已经有了则不需要), 前两个文件是在/madplay/lib/下生成的,把这两个文件也拷贝到/usr/lib下。 将madplay复制到根文件系统/usr/bin目录下,将一个MP3文件也放在某一目录下,在开发板上执行madplay程序 #madplay XXX.mp3 MPEG Audio Decoder 0.15.2 (beta) - Copyright (C) 2000-2004 Robert Leslie et al. s3c2410-uda1341-superlp: audio_set_dsp_speed:44100 prescaler:66 Title: XX Artist: XXX Album: XXXX Track: XX 3 Comment: XXXXXXXXX s3c2410-uda1341-superlp: audio_set_dsp_speed:44100 prescaler:66 如果出现这个信息,应该就没有问题了,可以听歌了。 madplay还有一些快捷键,比如:增大/减小音量(+/-),暂停(b),停止(ESC),其他的操作可以查看madplay的源码。 5. 静态编译 以上是用动态编译的方法,程序运行时需依赖动态库文件。也可以采用静态编译的方法,将静态库编译到程序中,运行时不需要动态库文件 在配置libid3tag,libmad,madplay时,加上参数“--disable-shared --enable-static”即可静态编译madplay 编译完成后只需将madplay复制到根文件系统/usr/bin目录下,不需要复制动态库。
转载地址:http://nmpzm.baihongyu.com/