QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 706|回复: 9

Compile Error:MPlayer-0.90

[复制链接]
发表于 2003-4-23 23:10:56 | 显示全部楼层 |阅读模式
# ./configure --enable-gui --enable-largefiles --enable-linux-devfs --enable-smb --enable-live --enable-menu --enable-xmms --language=zh --enable-shared-pp --enable-dynamic-plugins --with-win32libdir=/usr/lib/win32 --with-xanimlibdir=/usr/lib/xanim --with-reallibdir=/usr/lib/rp9 --with-xvidcore=/usr/local/lib/ --with-sdl-config=/usr/bin/sdl-config --with-freetype-config=/usr/bin/freetype-config --with-gtk-config=/usr/bin/gtk-config --with-glib-config=/usr/bin/glib-config --with-livelibdir=/usr/lib/live --with-xmmsplugindir=/usr/lib/xmms --with-xmmslibdir=/usr/lib

# make
make -C loader
make[1]: Entering directory `/home/src/mplayer/MPlayer-0.90/loader'
gcc -I. -I.. -O4 -march=athlon-tbird -mcpu=athlon-tbird -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -U_FILE_OFFSET_BITS -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include  -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -DMPLAYER -D__WINE__ -Ddbg_printf=__vprintf -DTRACE=__vprintf  -c ldt_keeper.c
ldt_keeper.c: In function `Setup_LDT_Keeper':
ldt_keeper.c:168: storage size of `array' isn't known
ldt_keeper.c:201: sizeof applied to an incomplete type
make[1]: *** [ldt_keeper.o] Error 1
make[1]: Leaving directory `/home/src/mplayer/MPlayer-0.90/loader'
make: *** [loader/libloader.a] Error 2

What can I do?
发表于 2003-4-23 23:20:13 | 显示全部楼层
怀疑是gcc的版本问题
回复

使用道具 举报

 楼主| 发表于 2003-4-23 23:54:24 | 显示全部楼层
# gcc -v
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linux
Thread model: posix
gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)

redhat 9 我没动过,之前编译通过了(好像也遇到了这样的问题,不知道怎么又过出了,呵呵,健忘),只是刚装上alsa驱动,要把alsa加进去。源码不会错吧?
回复

使用道具 举报

发表于 2003-4-24 23:26:15 | 显示全部楼层
make clean一下重新configure重新make试试
gcc3.2版本应该是可以的
回复

使用道具 举报

 楼主| 发表于 2003-4-25 07:57:33 | 显示全部楼层
看了下面的解释,彻底绝望了,我都试过一遍
我觉得可能跟firefly的补丁有关,没装firefly之前,编译通过过一次
http://mplayerhq.hu/pipermail/mplayer-users/2002-October/021830.html

Hi, Craig,

Could you try with optimizations on -O3 and let me know if that works?
MPlayer's very picky about optimizations.  Often "CFLAGS= ./configure..."
(unsetting CFLAGS on configure in BUILD) will let MPlayer compile on its
own optimizations.  Athlons are especially picky about optimizations in
MPlayer.  Try removing the CFLAGS= part in BUILD as well (if it is already
there).  Also, see if you can build without gui support, etc.  MPlayer can
be configured in a lot of ways, so it's good to isolate the problem.

If all else fails, you may want to file a bug on it, and I'll investigate
further.  You can always try seeing if you can get it to compile outside
of sorcery, too, and let me know if that works.

Thanks for reporting this,

Seth Woolley
Video/Graphics Grimoire Guru

On Mon, 4 Nov 2002, Craig Dyke wrote:

> Date: Mon, 4 Nov 2002 14:42:07 +0800
> From: Craig Dyke <[email protected]>
> To: Grimoire <[email protected]>
> Subject: [SM-Grimoire]MPlayer pre8
>
> And last but not least.
>
> Error:
>
> /usr/bin/make -C loader
>
> make[1]: Entering directory `/usr/src/MPlayer-0.90pre8/loader'
>
> gcc -I. -I.. -O4 -march=athlon-tbird -mcpu=athlon-tbird -pipe -ffast-math -f
> omit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -
> U_FILE_OFFSET_BITS -I-I/usr/include -I/usr/include/dvdnav -I/usr/include/gtk
> -1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include -f
> no-omit-frame-pointer -mno-omit-leaf-frame-pointer -DWIN32_PATH=\"/usr/lib/w
> in32\" -DMPLAYER -D__WINE__ -Ddbg_printf=__vprintf -DTRACE=__vprintf -c
> ldt_keeper.c
>
> ldt_keeper.c: In function `Setup_LDT_Keeper':
>
> ldt_keeper.c:163: storage size of `array' isn't known
>
> ldt_keeper.c:196: sizeof applied to an incomplete type
>
> make[1]: *** [ldt_keeper.o] Error 1
>
> make[1]: Leaving directory `/usr/src/MPlayer-0.90pre8/loader'
>
> make: *** [loader/libloader.a] Error 2
>
> Log also attached
>
>
>
> Craig
>
回复

使用道具 举报

发表于 2003-4-25 12:36:32 | 显示全部楼层
如果你怀疑和字体补丁有关,可以试试下面的参数
--disable-freetype
回复

使用道具 举报

发表于 2003-4-25 20:03:24 | 显示全部楼层
http://www.mplayerhq.hu/pipermail/mplayer-users/2002-November/024091.html
回复

使用道具 举报

发表于 2003-4-25 20:27:46 | 显示全部楼层
还真奇怪,我这里gcc 3.2 20020903编译没这种错误
回复

使用道具 举报

发表于 2003-4-25 21:42:18 | 显示全部楼层
我编译倒是很顺利,只是我即使允许freetype也无法使用它来显示字幕,所以我显示是使用--disable-freetype编译出的版本,使用自己制作的字库来显示字幕。
回复

使用道具 举报

 楼主| 发表于 2003-4-26 11:15:51 | 显示全部楼层
Thank you for your hint/help.

If anyone has the same problem,you can edit MPlayerSource/loader/ldt_keeper.c like this:
------------------------------------ ldt_keeper.c ---------------------------------------------------------
#ifdef __linux__
#include <asm/unistd.h>
#include <asm/ldt.h>
// 2.5.xx+ calls this user_desc:
#include <linux/version.h>
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,47)   //(2,5,47) =>you using kernel,such as (2.4.20)
#define modify_ldt_ldt_s user_desc
#endif
-------------------------------------------------------------------------------------------------------------
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-12-5 04:12 , Processed in 0.049663 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表