+ -
当前位置:首页 → 问答吧 → 编译mplayer出错

编译mplayer出错

时间:2009-12-20

来源:互联网

编译的是AUR上mplayer-minimal-svn

我把PKGBUILD的configure参数改成:

./configure --prefix=/usr --confdir=/etc/mplayer --enable-vdpau \
--enable-freetype --enable-ass --enable-largefiles

其他没动。
编译过程出现如下的出错信息
…………
…………
mp_core.h:95: error: expected specifier-qualifier-list before 'ass_track_t'
command.c: In function 'mp_property_sub':
command.c:1340: error: dereferencing pointer to incomplete type
command.c:1341: error: dereferencing pointer to incomplete type
command.c:1372: error: 'sh_sub_t' has no member named 'lang'
command.c:1458: error: 'MPContext' has no member named 'set_of_ass_tracks'
command.c:1459: error: 'MPContext' has no member named 'set_of_ass_tracks'
command.c:1463: error: 'MPContext' has no member named 'set_of_subtitles'
command.c:1489: error: 'sh_sub_t' has no member named 'ass_track'
command.c: In function 'mp_property_tv_color':
command.c:1862: warning: cast from pointer to integer of different size
command.c:1864: warning: cast from pointer to integer of different size
command.c:1867: warning: cast from pointer to integer of different size
command.c:1873: warning: cast from pointer to integer of different size
command.c: In function 'mp_property_teletext_common':
command.c:1886: warning: cast from pointer to integer of different size
command.c: In function 'mp_property_teletext_mode':
command.c:1934: warning: cast from pointer to integer of different size
command.c: In function 'run_command':
command.c:2570: warning: implicit declaration of function 'ass_step_sub'
command.c:2722: error: 'MPContext' has no member named 'file_format'
command.c:2726: error: 'MPContext' has no member named 'file_format'
command.c:2740: error: 'MPContext' has no member named 'file_format'
command.c:2754: error: 'MPContext' has no member named 'file_format'
command.c:2760: error: 'MPContext' has no member named 'file_format'
command.c:2792: error: 'MPContext' has no member named 'last_dvb_step'
command.c:2800: error: 'MPContext' has no member named 'dvbin_reopen'
command.c:2806: error: 'MPContext' has no member named 'file_format'
command.c:2828: error: 'MPContext' has no member named 'last_dvb_step'
command.c:2832: error: 'MPContext' has no member named 'dvbin_reopen'
command.c:2838: error: 'MPContext' has no member named 'file_format'
command.c:2857: error: 'MPContext' has no member named 'file_format'
command.c:2862: error: 'MPContext' has no member named 'file_format'
command.c:2900: error: 'MPContext' has no member named 'set_of_subtitles'
command.c:2905: error: 'MPContext' has no member named 'set_of_subtitles'
command.c:2916: error: 'MPContext' has no member named 'set_of_subtitles'
command.c:2930: error: 'MPContext' has no member named 'set_of_subtitles'
command.c:2931: error: 'MPContext' has no member named 'set_of_subtitles'
command.c:2936: error: 'MPContext' has no member named 'set_of_subtitles'
command.c:3199: error: 'MPContext' has no member named 'was_paused'
command.c:3199: error: 'MPContext' has no member named 'was_paused'
command.c:3200: error: 'MPContext' has no member named 'was_paused'
command.c:3206: error: 'MPContext' has no member named 'was_paused'
make: *** [command.o] 错误 1
==> 错误: 创建失败。
正在放弃...

google了半天也没找到解决方法。

btw:PKGBUILD没改之前也是同样的出错信息。

恳请各位帮忙。

作者: naturennn   发布时间: 2009-12-20

你把参数改成这样 "minimal" 的意义就完全失去了. 你得加上许多--disable才会让它编译出个"minimal"的. 不过反正编译出来的包本来就只有两个mp3文件的大小, 干吗要minimal呢?
至于出错信息很可能跟这两个选项有关: --enable-freetype --enable-ass
但是不能保证去掉这两个就会顺利编译.

你可以试试AUR上的mplayer-vdpau-svn, 我前天编译过i686的包, 是OK的.

PS:
要支持ass字幕不需要指定--enable-ass就会支持了, mplayer会自动侦测编译环境尽可能给你enable. 反正我这边编译出来ass字幕完全没问题了(我安装了libass不过不知道有么必要)
要使用vdpau你得安装libvdpau, 这样编译的mplayer才会支持-vo vdpau.

作者: lolilolicon   发布时间: 2009-12-20

编译mplayer-vdpau-svn 还是不行

libvo/vosub_vidix.c:536: warning: assignment from incompatible pointer type
libvo/vosub_vidix.c:538: warning: assignment from incompatible pointer type
libvo/vosub_vidix.c:540: warning: assignment from incompatible pointer type
libvo/vosub_vidix.c:541: warning: assignment from incompatible pointer type
libvo/vosub_vidix.c: In function 'vidix_preinit':
libvo/vosub_vidix.c:703: warning: assignment from incompatible pointer type
libvo/vosub_vidix.c:704: warning: assignment from incompatible pointer type
==> 错误: 创建失败。
正在放弃...
Error: Makepkg was unable to build mplayer-vdpau-svn package.

作者: naturennn   发布时间: 2009-12-22

这些都是warning, 怎么就创建失败了呢? 你确定没有别的错误信息?

另外, 你很可能需要首先编译安装 x264-git, opencore-amr, ffpmeg-svn, 最后再编译 mplayer-vdpau-svn. 总之我就是这么干的.

作者: lolilolicon   发布时间: 2009-12-22

呵呵,继续
==> 错误: 创建失败。
正在放弃...

呵呵,多谢lolicon了

btw:能把你编译的mplayer-vdpau-svn 传我一份么?

naturennn at qq.com

作者: naturennn   发布时间: 2009-12-22

http://omploader.org/vMzIwOQ/mplayer...686.pkg.tar.gz

好运

作者: lolilolicon   发布时间: 2009-12-22