移植前需求准备:
a. 源码包:
1. libid3tag-0.15.1b.tar.gz
2. libmad-0.15.1b.tar.gz
3. madplay-0.15.2b.tar.gz
4. zlib-1.2.3.tar.gz(前三个源码包都依赖于这个包)
b.交叉编译工具链:
1. arm-linux-gcc-4.3.2
移植过程:
1. 将以上四个源码包拷贝到一个文件夹下(读者拷贝到madplay目录下)
,然后分别解压(tar -xzvf xxxxxx.tar.gz)。
2. 进入源码包zlib-1.2.3.tar.gz解压后的目录下:
a.
./configure --prefix=/root/madplay/zlib
b.
设置全局变量:
export AR=arm-linux-ar
export CC=arm-linux-gcc
export RANLIB=arm-linux-ranlib
c.
make
d.
make install
3. 进入源码包libid3tag-0.15.1b.tar.gz解压后的目录下:
a.
./configure --prefix=/root/madplay/libid3tag
--host=arm-linux-gcc
CC=arm-linux
CPPFLAGS=-I/root/madplay/zlib/include
LDFLAGS=-L/root/madplay/zlib/lib
b.
make(编译)
c.
make install (安装)
4. 进入源码包libmad-0.15.1b.tar.gz解压后的目录下:
a.
./configure --prefix=/root/madplay/libmad
--host=arm-linux-gcc
CC=arm-linux
CPPFLAGS=-I/root/madplay/zlib/include
LDFLAGS=-L/root/madplay/zlib/lib
b.
make
(注意: 如果出现-fforce-mem问题,请编辑目录下的Makefile文件,将-fforce-mem 字段删除.)
c.
make install
5. 进入源码包madplay-0.15.2b.tar.gz解压后的目录下:
madplay的编译依赖于libid3tag-0.15.1b.tar.gz,
libmad-0.15.1b.tar.gz
所以使用命令:
cp /root/madplay/libid3tag/include/* /root/madplay/zlib/include/
cp /root/madplay/libid3tag/lib/* /root/madplay/zlib/lib/
cp /root/madplay/libmad/include/* /root/madplay/zlib/include/
cp /root/madplay/libmad/lib/* /root/madplay/zlib/lib/
a.
./configure --host=arm-linux-gcc
CC=arm-linux
CPPFLAGS=-I/root/madplay/zlib/include
LDFLAGS=-L/root/madplay/zlib/lib
b.
make
(注意: 无需make install)此时madplay可执行文件在当前目录下
6. 使用命令arm-linux-readelf -d madplay查看可执行文件madplay所依赖的动态库。
libid3tag.so.0 libmad.so.0 libc.so.6 libm.so.6
前两个我们刚刚编译好了,后两个开发板的lib目录下一般都有。
将libid3tag.so.0 libmad.so.0 madplay 拷贝到开发板的lib目录下
将一首MP3拷贝到lib目录下使用 madplay 1.mp3插上耳机聆听吧!
madplay移植
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.