嵌入式开发平台

时间:2022-01-10 00:51:15

一、 编译环境及库文件

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 &

注意:示例程序运行会有写问题可能是内核里要修改选项,大家可以百度以下.

详情了解:http://topeetboard.com 更多了解:https://arm-board.taobao.com