系统环境:Ubuntu 12.04 LTS 32bit
硬件平台: EPC9600
软件平台:arm-none-linux-gnueabi-gcc 4.5.2
一、下载编译安装libmad库文件
MAD (libmad)是一个开源的高精度 MPEG 音频解码库,支持 MPEG-1(Layer I, Layer II 和 LayerIII(也就是 MP3)。LIBMAD 提供 24-bit 的 PCM 输出,完全是定点计算,非常适合没有浮点支持的平台上使用。使用 libmad 提供的一系列 API,就可以非常简单地实现 MP3 数据解码工作。在 libmad 的源代码文件目录下的 mad.h 文件中,可以看到绝大部分该库的数据结构和 API 等。
1、下载库文件源码:http://downloads.sourceforge.net/mad/libmad-0.15.1b.tar.gz
2、解压到工作目录,我的目录是:/home/liuyan/kangyuan/MPlayer/
3、切换到目录:cd /home/liuyan/kangyuan/MPlayer/libmad-0.15.1b/
4、./configure CC=arm-none-linux-gnueabi-gcc --host=arm-none-linux-gnueabi --disable-shared --disable-debugging --prefix=/home/liuyan/kangyuan/MPlayer/libmad-build
5、make
出现错误:cc1: error: unrecognized command line option "-fforce-mem"
解决方法:找到Makefile并删除“--fforce-mem”就OK了, 原因是gcc 4.5.2已经将其去除了,所以会出现上面的错误,然后重新执行make
6、make install
二、编译安装MPlayer
1、下载MPlayer源码:http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.1.1.tar.xz
2、解压到工作目录,我的目录是:/home/liuyan/kangyuan/MPlayer/
3、切换到目录:cd /home/liuyan/kangyuan/MPlayer/MPlayer-1.1.1/
4、./configure --prefix=/home/liuyan/kangyuan/MPlayer/mplayer-build --disable-mencoder --disable-iconv --disable-live --disable-dvdnav --disable-dvdread --disable-dvdread-internal --disable-libdvdcss-internal --enable-ftp --enable-libavcodec_mpegaudio_hp
--enable-mad --disable-mp3lib --disable-ivtv --enable-fbdev --enable-ossaudio --enable-cross-compile --cc=arm-none-linux-gnueabi-gcc --host-cc=gcc --target=arm-none-linux-gnueabi --enable-static --extra-cflags=-I/home/liuyan/kangyuan/MPlayer/libmad-build/include
--extra-libs=-L/home/liuyan/kangyuan/MPlayer/libmad-build/lib 2>&1 |tee logfile
注意:如果不加–disable-ivtv会出现ivtv文件产生的错误。
l MPlayer不支持常见的--host来修改编译工具前缀.必须用--cc,--ar,--ranlib这样参数来修改.
l --disable-mp3lib是关闭默认的MP3解码库,--enable-mad 是使用libmad支持.
l --disable-dvbhead --disable-dvdread --disable-dvdnav --disable-dvdread-internal 都是跟DVD相关库
l --enable-fbdev 打开framebuffer支持.ARM开发板必须的.
l --enable-static 如果使用静态编译尺寸大约是8M,动态编译是6M多,这样可能是无论哪种编译方式,mplayer都把自带的解码库链接到自身,多出2M应该是系统标准库的尺寸。
l --enable-static 设置静态连接
l --disable-mencoder 禁止编码功能
5、make install
出现错误:install -m 755 -s mplayer /home/liuyan/kangyuan/MPlayer/mplayer-build/bin
strip: Unable to recognise the format of the input file `/home/liuyan/kangyua/MPlayer/mplayer-build/bin/mplayer‘
install: strip process terminated abnormally
make: *** [install-mplayer] 错误 1
解决办法:将config.mak中 INSTALLSTRIP=-s,-s去掉即可
MPlayer移植到EPC9600笔记
原文:http://blog.csdn.net/laotie1015/article/details/44064627