您的位置:首页 > 编程语言 > Qt开发

mplayer在飞凌ok6410移植(包含多版本交叉编译器)

2011-12-17 21:35 411 查看
平台内核:Linux

libmad版本:0.15.1b

mplayer版本:rc2

交叉编译器版本:arm-linux-gcc 3.4.1,4.2.2,4.3.2

老房原创,转载请声明!!

(补充了arm-linux-gcc 4.3.2版本移植过程)

***************************************************************************************

以下采用arm-linux-gcc4.2.2,在我的6410开发板(飞凌6410)上运行通过:

1、先编译libmad解码库:

下载源代码http://cdnetworks-kr-1.dl.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz

(1)

./configure --enable-fpm=arm --host=arm-linux --disable-shared --disable-debugging --prefix=/usr/local/arm/4.2.2-eabi/lib CC=/usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-gcc

(2)

make

(3)

make install

2、再编译mplayer

(1)

./configure --cc=/usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-gcc --target=arm-linux --enable-static --prefix=/tmp/mplayer-rc2 --disable-win32dll --disable-dvdread --enable-fbdev --disable-mencoder --disable-live --disable-mp3lib --enable-mad --enable-libavcodec_a
--language=en_US --disable-armv5te --disable-armv6 --with-extraincdir=/usr/local/arm/4.2.2-eabi/lib/include --with-extralibdir=/usr/local/arm/4.2.2-eabi/lib/lib --host-cc=gcc --enable-ossaudio

(2)

make

注意,期间若出现:

----------------------------------------------------------------------------

dsputil_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libavcodec/armv4l/dsputil_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

----------------------------------------------------------------------------

motion_comp_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

(3)

无错误即可生成mplayer拷贝到开发板根文件系统/usr/local,NFS挂载根文件系统后,超级终端执行:

cd /usr/local

./mplayer ./yishengyouni.mp4 即可播放./yishengyouni.mp4文件

***************************************************************************************

以下采用arm-linux-gcc3.4.1(生成了可执行文件后,2440的开发板手头没有,所以我还木有试!!!)

1、先编译libmad解码库:

下载源代码http://cdnetworks-kr-1.dl.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz

(1)

./configure --enable-fpm=arm --host=arm-linux --disable-shared --disable-debugging --prefix=/usr/local/arm/3.4.1/arm-linux/lib CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc

(2)

make

(3)

make install

2、再编译mplayer

(1)

./configure --cc=/usr/local/arm/3.4.1/bin/arm-linux-gcc --target=arm-linux --enable-static --prefix=/tmp/mplayer-rc2 --disable-win32dll --disable-dvdread --enable-fbdev --disable-mencoder --disable-live --disable-mp3lib --enable-mad --enable-libavcodec_a --language=en_US
--disable-armv5te --disable-armv6 --with-extraincdir=/usr/local/arm/3.4.1/arm-linux/lib/include --with-extralibdir=/usr/local/arm/3.4.1/arm-linux/lib/lib --host-cc=gcc --enable-ossaudio

(2)

make

注意,期间若出现:

----------------------------------------------------------------------------

dsputil_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libavcodec/armv4l/dsputil_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

----------------------------------------------------------------------------

motion_comp_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

(3)(我还没试~~~~~~)

无错误即可生成mplayer拷贝到开发板根文件系统/usr/local,NFS挂载根文件系统后,超级终端执行:

cd /usr/local

./mplayer ./yishengyouni.mp4 即可播放./yishengyouni.mp4文件

********************************************************************************************************

 以下采用arm-linux-gcc4.3.2,在我的6410开发板(飞凌OK6410A)上运行通过:

1、先编译libmad解码库:

下载源代码http://cdnetworks-kr-1.dl.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz

(1)

./configure --enable-fpm=arm --host=arm-linux --disable-shared --disable-debugging --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/lib CC=/usr/local/arm/4.3.2/bin/arm-linux-gcc



(2)

make

(3)

make install

2、再编译mplayer(版本rc2)

(1)

./configure --cc=arm-linux-gcc --target=arm-linux --enable-static --prefix=/tmp/mplayer-rc2 --disable-win32dll --disable-dvdread --enable-fbdev --disable-mencoder --disable-live --disable-mp3lib --enable-mad --enable-libavcodec_a --language=en_US --disable-armv5te
--disable-armv6 --with-extraincdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/lib/include --with-extralibdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/lib/lib --host-cc=gcc --enable-ossaudio --disable-ivtv

(2)

make

注意,期间若出现:

----------------------------------------------------------------------------

dsputil_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libavcodec/armv4l/dsputil_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

----------------------------------------------------------------------------

motion_comp_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

(3)

无错误即可生成mplayer拷贝到开发板根文件系统/usr/local,NFS挂载根文件系统后,超级终端执行:

cd /usr/local

./mplayer ./yishengyouni.mp4 即可播放./yishengyouni.mp4文件
可以使用QT为mplayer做个界面~~


**********************************************************************************************

另附一段来自网络的mplayer配置参数说明

--host-cc=gcc --cc=arm-linux-gcc --target=arm-linux //这个不需要解释 

--enable-fbdev //打开framebuffer支持.ARM开发板必须的 

--enable-static //静态编译,编译成功后只需要将exe文件拷走即可以使用 

--disable-dvdread --disable-dvdnav --disable-dvdread-internal //全部与DVD相关,无视即可 

--disable-libdvdcss-internal //这个不加低版本mplayer也会出错 

--disable-live //禁止流媒体,我们用不到 

--disable-mp3lib --enable-mad //关闭默认的MP3解码库,使用我们刚才编译的libmad 

--disable-win32dll //禁用win32动态链接库支持 

--disable-mencoder //交叉编译mencoder会有问题,而且arm上不需要这个功能 

--disable-ivtv //如果不加会出现ivtv文件产生的错误  

--enable-libavcodec_a //启用静态的libavcodec解码 

--prefix=/usr/local/Mplayer/mplayer 2>&1 | tee logfile //不解释  

出处:http://topic.csdn.net/u/20110601/09/53efb487-ce71-4ffb-9721-b8bf078cdf6f.html

注意链接与本教程mplayer版本的不同

另附一个介绍configure的链接:http://wenku.baidu.com/view/4b6e03ea6294dd88d0d26bbb.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编译器 dll gcc 终端 exe qt