box ~ # opengl-update xorg-x11 * Switching to xorg-x11 OpenGL interface... [ ok ] box ~ # emerge -v mythtv Calculating dependencies ...done! >>> emerge (1 of 1) media-tv/mythtv-0.15.1-r1 to / >>> md5 src_uri ;-) mythtv-0.15.1.tar.bz2 X opengl * OpenGL implementation must be set to either xfree or xorg-x11 to allow compilation. * to change opengl implemantation use opengl-update <your xserver>. * After mythtv has been merged you can switch back to the preferred implementation.. !!! ERROR: media-tv/mythtv-0.15.1-r1 failed. !!! Function pkg_setup, Line 53, Exitcode 0 !!! Incompatible OpenGL implementation. !!! If you need support, post the topmost build error, NOT this status message. Reproducible: Always Steps to Reproduce: 1. opengl-update xorg-x11 2. emerge mythtv 3. Actual Results: See details Expected Results: No complaints from portage. Incidentally, even if this is fixed to work how it seems intended to work, it still breaks an emerge -e world, which is ugly, and makes the requirement for an opengl-update before merging a total ugly kludge. The ebuild *SHOULD* be finding the necessary headers based on virtual/x11, not on whatever the hell is set by opengl-update. Using opengl-update 1.8.1 Portage 2.0.51_pre13 (gcc34-amd64-2004.1, gcc-3.4.1, glibc-2.3.4.20040619-r0, 2.6.7-gentoo-r11 x86_64 5) ================================================================= System uname: 2.6.7-gentoo-r11 x86_64 5 Gentoo Base System version 1.5.1 Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.90.0.1.1-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CFLAGS="-march=k8 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=k8 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X aac aim alsa amd64 apm avi berkdb cddb cdr crypt cups dvd dvdr encode fbcon flac foomaticdb gdbm gif gimpprint gpm gtk gtk2 imap imlib javascript joystick jpeg kerberos libg++ libwww mad mikmod mpeg multilib mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python quicktime readline sdl slang spell ssl tcpd threads tiff truetype xml2 xmms xv xvid zlib ~arch"
It's no wonder it isn't working. opengl-update returns this: # opengl-update --get-implementation xorg-x11:/usr/lib32/opengl/xorg-x11/lib but in pkg_setup we check if this result equals "xfree" or "xorg-x11" well, it's neither, it's "xorg-x11:/usr/lib32/opengl/xorg-x11/lib" pkg_setup() { if use X; then QTP=x11-libs/qt; else QTP=x11-libs/qt-embedded; fi local qt_use="$(</var/db/pkg/`best_version ${QTP}`/USE)" if [ ! "`has mysql ${qt_use}`" ] ; then eerror "Qt is missing MySQL support. Please add" eerror "'mysql' to your USE flags, and re-emerge Qt." die "Qt needs MySQL support" fi if use opengl ; then local gl_implementation="$( opengl-update --get-implementation )" if [ "$gl_implementation" == "xfree" ] || [ "$gl_implementation" == "xorg-x11" ] ; then return 0 else eerror "OpenGL implementation must be set to either xfree or xorg-x11 to allow compilation." eerror "to change opengl implemantation use opengl-update <your xserver>." eerror "After mythtv has been merged you can switch back to the preferred implementation.." die "Incompatible OpenGL implementation." fi fi return 0 } I removed the check and it installs You're right about the emerge -e world though... I'd expect portage quickly scans through all the ebuilds that he'd like to merge and then gives you this message (i.e. say he'd like an opengl-update) before he starts doing the first package, but actually I think that's a whole other story:) someone might have to bug report it on its own if it isn't already
The opengl check has been removed from 0.16 as it now compiles with nvidia headers.