ARM移植MPlayer

【ARM移植MPlayer】奋斗了一晚上 , 多方查找资料 , 终于将MPlayer交叉编译成功了 , 小记经验于此 。
MPlayer版本:MPlayer-1.0rc2.tar.bz2;
交叉编译器:cross-3.2.tar.bz2

1 在我的主目录中解压Mplayer
2 安装交叉编译器 , 将cross-3.2.tar.bz2以root权限拷贝到/目录执行解压操作
3 cd Mplayer目录
4 修改stream.c , 注释掉
//#ifdef USE_DVDREAD
//extern stream_info_t stream_info_dvd;
//#endif
//#ifdef USE_DVDREAD
// &stream_info_dvd,
//#endif
原因见5 , 都是关于dvd的错误 。
5 ./configure --host-cc=gcc --cc=arm-linux-gcc --target=arm-armv4l-linux --enable-static --disable-win32dll --disable-dvdread --disable-dvdread-internal --disable-dvdnav --disable-libdvdcss-internal --enable-fbdev --disable-mencoder --disable-live 2>&1 | tee logfile
注意:--host-cc=gcc要加 , 不然会出现codec-cfg无法执行的错误 。
disable掉所有在configure中的关于dvd的选项 , 一方面我在嵌入式平台上用不着dvd , 另一方面如果不去掉这些dvd的选项 , 会出现以下错误 。
/usr/include/netinet/in.h:259: error: parse error before '(' token
/usr/include/netinet/in.h:259: error: parse error before "__u32"
/usr/include/netinet/in.h:260: error: parse error before '(' token
/usr/include/netinet/in.h:260: error: parse error before "__u16"
/usr/include/netinet/in.h:262: error: parse error before '(' token
/usr/include/netinet/in.h:262: error: parse error before "__u32"
/usr/include/netinet/in.h:264: error: parse error before '(' token
/usr/include/netinet/in.h:264: error: parse error before "__u16"
6 make
7 哈哈 , 我可爱的mplayer终于将生了!

感谢下面三个链接:
http://blog.chinaunix.net/u/28484/showart_324583.html
http://www.eetop.cn/bbs/thread-55200-1-1.html
http://readlist.com/lists/mplayerhq.hu/mplayer-users/2/11390.html

    推荐阅读