300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 移植MPlay到mini2440开发板

移植MPlay到mini2440开发板

时间:2023-01-04 00:41:00

相关推荐

移植MPlay到mini2440开发板

一:准备源文件和工具

交叉编译器:arm-linux-gcc-4.4.3(mini2440提供的交叉编译工具);

mad库支持:libmad-0.15.1b.tar.gz

Mplay源文件:MPlayer-1.0rc2.tar.bz2

二:编译mad库

首先解压mad压缩包 # tar zxvflibmad-0.15.1b.tar.gz

得到 libmad-0.15.1b

可以先使用 命令 ./configure --help 查看configure后要加的各个参数所表示的意思。

我的命令如下

1. ./configure --enable-fpm=arm --host=arm-linux --disable-shared \

--disable-debugging --prefix=/home/xuxiong/madlib\

CC=arm-linux-gcc

其中 --prefix为你要install architecture-independent files in PREFIX

自己建立文件夹来防止mad编译出来的库和头文件。

2 执行 make命令

其中过程会报错:

cc1: error: unrecognized command line option "-fforce-mem"

其实这个错误是编译安装 libmad 时候引起的,audacity 包含 libmad

解决方式是:找到 libmad configure 之后的 Makefile,

Vim Makefile

找到包含"-fforce-mem"字符串,将其删除,就 ok 了

原因是 gcc 3.4 或者更高版本,已经将其去除了,所以会出现上面的错误

三 编译 mplay

1. 解压后执行命令:

./configure --cc=arm-linux-gcc --host-cc=gcc --target=arm-linux \

--prefix=/home/xiaogao/mplayer/ --disable-win32dll --disable-dvdread \

--enable-fbdev --disable-mencoder --disable-live --disable-mp3lib --disable-ivtv\

--enable-mad --enable-libavcodec_a --language=zh_CN \

--disable-armv5te --disable-armv6 \

--with-extraincdir=/home/xuxiong/madlib/include 上面库生成的 include 路径

--with-extralibdir=/home/xuxiong/madlib/lib 上面库生成的 lib 路径

2.make

报错 armv4l/dsputil_arm_s.S:79: Error: selected processor does not support `pld [r1]''

pld 预读取

修改源码 libavcodecarmv4ldsputil_arm_s.S, libmpeg2motion_comp_arm_s.S

在其开始的加入,这段代码意思是定义一个空的 ARM 汇编宏 pld,这样当代码出现 pld 指令,

就变成一条空指令

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

pld 指令只在 armv5te 以上版本有效,在 2440(armv4l)无效.必须取消掉.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。