After emerge --sync and emerge opengl_update today, emerge mplayer fails in vo_gl.c (complains about gl_common.h): cc -c -I../libvo -I../../libvo -I/usr/X11R6/include -fno-PIC -O4 -march=pentium4 -mcpu=pentium4 -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I. -I.. -I../osdep -I../libavutil -I/usr/include/freetype2 -I/usr/include/SDL -D_REENTRANT -I/usr/X11R6/include -DMPG12PLAY -o vo_gl.o vo_gl.c In file included from vo_gl.c:14: gl_common.h:250: error: syntax error before '*' token gl_common.h:251: error: syntax error before '*' token gl_common.h:252: error: syntax error before '*' token <snip> vo_gl.c:613: error: `BindBuffer' used prior to declaration vo_gl.c:632: error: `BindBuffer' used prior to declaration make[1]: *** [vo_gl.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/mplayer-1.0.20060217/work/mplayer-1.0.20060217/libvo' make: *** [libvo/libvo.a] Error 2 emerge --info: -------------- Portage 2.0.54 (default-linux/x86/no-nptl/2.4, gcc-3.3.5-20050130, glibc-2.3.5-r2, 2.4.26-gentoo-r6 i686) ================================================================= System uname: 2.4.26-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 2.53GHz Gentoo Base System version 1.6.14 dev-lang/python: 2.3.5, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.4.22-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-pipe -O2 -march=pentium4 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-pipe -O2 -march=pentium4 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X acl alsa apm arts audiofile avi berkdb bitmap-fonts bonobo bzip2 cdr crypt cups curl eds emboss encode esd exif expat fam ffmpeg foomaticdb fortran gdbm gif glut gnome gpm gstreamer gtk gtk2 gtkhtml guile idn imlib ipv6 jack java jpeg kde lcms libg++ libwww mad mikmod mng motif mozilla mp3 mpeg ncurses nls ogg openal opengl oss pam pcre pdflib perl png postgres python qt quicktime readline ruby sdl slang spell ssl svga tcpd tiff truetype truetype-fonts type1-fonts vorbis xml xml2 xmms xv zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS
Same problem... make[1]: *** [vo_xvmc.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/mplayer-1.0.20060217/work/mplayer-1.0.20060217/libvo' make: *** [libvo/libvo.a] Error 2 !!! ERROR: media-video/mplayer-1.0.20060217 failed. Call stack: ebuild.sh, line 1894: Called dyn_compile ebuild.sh, line 941: Called src_compile adam@HotBBQ ~ $ emerge info Portage 2.1_pre4-r1 (default-linux/amd64/2005.1, gcc-3.4.5, glibc-2.3.6-r3, 2.6.15-gentoo-r5 x86_64) ================================================================= System uname: 2.6.15-gentoo-r5 x86_64 AMD Athlon(tm) 64 Processor 3200+ Gentoo Base System version 1.12.0_pre16 ccache version 2.4 [enabled] dev-lang/python: 2.3.5-r2, 2.4.2-r1 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1-r1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=athlon64 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -march=athlon64 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://open-systems.ufl.edu/mirrors/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="amd64 X aim alsa bash-completion bitmap-fonts cpudetection crypt cups dvd emacs emacs-w3 fbcon firefox font-server foomaticdb ftp gif gnome gnome-print gpm gstreamer gtk gtk2 imlib javascript jpeg mp3 mpeg msn ncurses nls nptl nptlonly nsplugin nvidia offensive opengl pam pdflib perl pmu png posix python quicktime readline sdl spell ssl svg tiff truetype-fonts type1 type1-fonts userlocales wmf xinetd xmms xpm xprint xvmc zlib elibc_glibc kernel_linux userland_GNU" Unset: ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
I really doubt it is the same problem when the error message is different... Anyway, to the reporter: Looks to me like your gl.h header does not define APIENTRY (or at least not correctly). Maybe you can attach your gl.h? Mine is from nVidia and works fine. Emerging with -opengl use flag should be a workaround.
Created attachment 80508 [details] gl.h file gl.h file as requested
The -opengl does actually allow to build. Thanks a lot. I have attached the gl.h header, which I guess is used. ls -l shows the symlinks was changed yesterday, which is a good sign to me. mercury ~ # ls -l /usr/include/GL/gl.h lrwxrwxrwx 1 root root 35 Feb 22 10:27 /usr/include/GL/gl.h -> /usr/lib/opengl/nvidia/include/gl.h This header does belong to nVidia, but does not contain any APIENTRY. It seems very old to me, though: mercury ~ # ls -l /usr/lib/opengl/nvidia/include/gl.h -rw-r--r-- 1 root root 151592 Aug 4 2004 /usr/lib/opengl/nvidia/include/gl.h I am currently trying to update the nVidia glx and kernel. I will keep you posted.
Now that I have updated nvidia-glx and nvidia-kernel, mplayer can compile successfully without -opengl, which means this problem is solved. But... I am now encountering system hangs when my 3D/GL screen saver is activated, either after a few minutes, or when I enter the password! As a work-around, I stay away from GL screen savers, until I can find out what happens. Thanks a lot for your helps. Best Regards, Olivier Leconte.
Should be fixed in MPlayer CVS, too. Unless somebody uses such broken headers under MinGW, in which case the stack will get too big real fast *g* (stupid calling conventions).