移植mplayer到itop4412开发板

来源:互联网 发布:塞班软件下载5233 编辑:程序博客网 时间:2024/06/01 08:55

一、 编译环境及库文件
linux环境:ubuntu12.04
交叉编译:4.3.2
arm板子:iTOP4412开发板
库文件: libmad-0.15.1 MPlayer-1.0rc2
1. 编译 libmad
(1) 首先配置 configure 文件

./configure CC=arm-linux-gcc –enable-fpm=arm –host=arm-linux –disable-shared –disable-debugging –prefix=/usr/local/arm/libmad_install

(2) 完成之后找到Makefile并删除124行(可能是不记得了)“--fforce-mem”就OK

了, 原因是gcc 4.4.3已经将其去除了,所以会出现上面的错误
(3)make
(4)make install
2.编译 Mpalyer
(1)首先配置 configure 文件

#./configure –cc=/usr/local/arm/4.3.2/bin/arm-linux-gcc –target=arm-linux –enable-static –prefix=/usr/local/arm/Mplayer1.2_install –disable-win32dll –disable-dvdread –enable-fbdev –disable-mencoder –disable-live –disable-mp3lib –enable-mad –enable-libavcodec_a –language=zh_CN –disable-armv5te –disable-armv6 –with-extraincdir=/usr/local/arm/libmad_install/include/ –with-extralibdir=/usr/local/arm/libmad_install/lib/ –host-cc=gcc –enable-ossaudio –disable-png –disable-ivtv

(2) 修改文件:
在MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S文件
和MPlayer-1.0rc2/libavcodec/armv4l/dsputil_arm_s.S文件的开始处写入

vim libmpeg2/motion_comp_arm_s.S //24行开始

内容:

ifndef HAVE_PLD

.macro pld reg
.endm

vim libavcodec/armv4l/dsputil_arm_s.S //21行开始

内容:

ifndef HAVE_PLD

.macro pld reg
.endm
(3) 修改Makefile
在Makefile的前面(95行)加入:
INSTALLSTRIP := # (将其置为空即可)
(4) make
(5) make install
2. 测试
我提供了两个测试代码是移植的友善之臂的两个项目(本来是qt4的我修改了以下qt5可以编译构建)
1. 广告机:adsdemo
2. 播放器:myplayer
运行:将编译好的程序和mplayer拷贝到开发板/bin/目录: ./adsdemo –qws &
注意:示例程序运行会有写问题可能是内核里要修改选项,大家可以百度以下.
我只提供机制不提供策略,仅供参考.

0 0
原创粉丝点击