您的位置:首页 > 其它

《华清远见学习手记》 之3G智能机器人——移植madplay到FS2410

2011-01-19 17:45 417 查看
移植madplay到FS2410

【编译环境】ubuntu 8.10 + Vmware + windows xp

【目标机】FS2410

【交叉编译器】arm-linux-gcc-3.4.1

为了让机器人“开口”说话和唱歌,我们需要让FS2410发出声音来,FS2410的开发板是有声卡的——UDA1341,所以,在做这一步之前要确保声卡驱动已经装好了,在你的开发板/dev目录下有dsp c 14 3 这个设备节点。
1.移植前要准备这几个源码包

zlib-1.2.3.tar.gz
,libid3tag-0.15.1b.tar.gz,
libmad-0.15.1b.tar.gz,

madplay-0.15.2b.tar.gz,后面三个可在 http://sourceforge.net/project/showfiles.php?group_id=12349下载。
2. 交叉编译zlib库 (如果开发板下有libz库,直接提取出来用,这一步可以略去)

./configure --prefix=/home/madplayer/lib

生成Makefile.

修改Makefile:

CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc (如果导出了环境变量,直接用arm-linux-gcc)

AR=/usr/local/arm/3.4.1/bin/arm-linux-ar

RANLIB=/usr/local/arm/3.4.1/bin/arm-linux-ranlib

编译并安装

make

make install

在--prefix指定的目录下会生成libz库。

3.交叉编译libid3tag

./configure --host=arm-linux --prefix=/home/madplayer/lib3tag --disable-shared

LDFLAGS=-L/home/madplayer/lib CPPFLAGS=-I/home/madplayer/inc

生成Makefile.

make

make install

在--prefix指定的目录下会生成

libid3tag

库。

4.交叉编译libmad

./configure --host=arm-linux --prefix=/home/madplayer/libmad --disable-shared

在--prefix指定的目录下会生成

libmad

库。

5.交叉编译madplay
把前面交叉编译得到的头文件、zlib.h和库文件分别拷贝到/home/madplayer/inc
和/home/madplayer/lib
下。
./configure --host=arm-linux --prefix=/home/madplayer/obj --disable-shared --enable-static

LDFLAGS=-L/home/madplayer/lib CPPFLAGS=-I/home/madplayer/inc

make

make install

在/home/madplayer/obj下会得到madplay可执行文件。

6. 把madplay拷贝到目标开发板,libz库拷贝到目标板下的/usr/lib

找一首XXX.mp3,./madplay -S XXX.mp3
测试一下,怎么样?听到美妙的音乐了吗?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: