Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 293685 - x11-base/xorg-server and eselect opengl (--impl-headers error)
Summary: x11-base/xorg-server and eselect opengl (--impl-headers error)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords: InOverlay, InVCS
Depends on:
Blocks:
 
Reported: 2009-11-19 01:36 UTC by Steve Kutnar
Modified: 2010-01-05 16:08 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
PLEASE REOPEN !!!! (build.log,104.56 KB, text/plain)
2010-01-05 15:34 UTC, renato gallo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Steve Kutnar 2009-11-19 01:36:37 UTC
Unfortunately, I can't come up with a better summary to describe this.  Feel free to update the summary to be more descriptive.

The issue here is that xorg-server relies on various headers (from OpenGL, I presume) in order to build properly.  I think in the past, the xorg-server ebuild automatically executed "eselect opengl xorg-x11" early in the process in order to guarantee that the needed pieces were present to achieve a good compile.  It seems like this behavior is no longer present.  I have to manually execute "eselect opengl xorg-x11" or else the compile fails with the following:


rensize.c: In function ‘__glXImageSize’:
rensize.c:222: error: ‘GL_DEPTH_STENCIL_MESA’ undeclared (first use in this function)
rensize.c:222: error: (Each undeclared identifier is reported only once
rensize.c:222: error: for each function it appears in.)
rensize.c:261: error: ‘GL_UNSIGNED_SHORT_15_1_MESA’ undeclared (first use in this function)
rensize.c:262: error: ‘GL_UNSIGNED_SHORT_1_15_REV_MESA’ undeclared (first use in this function)
rensize.c:276: error: ‘GL_UNSIGNED_INT_24_8_MESA’ undeclared (first use in this function)
rensize.c:277: error: ‘GL_UNSIGNED_INT_8_24_REV_MESA’ undeclared (first use in this function)
make[1]: *** [rensize.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
mv -f .deps/single2swap.Tpo .deps/single2swap.Plo
mv -f .deps/single2.Tpo .deps/single2.Plo
make[1]: Leaving directory `/var/tmp/portage/x11-base/xorg-server-1.6.5-r1/work/xorg-server-1.6.5/glx'
make: *** [all-recursive] Error 1


I am currently masking out the xorg 1.7 packages and also masking the nvidia-drivers 190 series.  See a later comment for my packages.mask.

I suspect a number of users will be hit by this issue.

Reproducible: Always

Steps to Reproduce:
1. eselect opengl nvidia
2. emerge xorg-server
3. 

Actual Results:  
Build failure

Expected Results:  
Build succeeds

Portage 2.2_rc50 (default/linux/amd64/10.0/no-multilib, gcc-4.4.2-asneeded, glibc-2.10.1-r0, 2.6.31-gentoo-r6 x86_64)
=================================================================                                                    
System uname: Linux-2.6.31-gentoo-r6-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4400+-with-gentoo-2.0.1         
Timestamp of tree: Thu, 19 Nov 2009 00:30:01 +0000                                                                   
app-shells/bash:     4.0_p35                                                                                         
dev-java/java-config: 2.1.9-r1
dev-lang/python:     2.6.4, 3.1.1-r1
dev-util/cmake:      2.8.0
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.5.2-r2
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.8.5-r3, 1.9.6-r2, 1.10.2, 1.11
sys-devel/binutils:  2.20
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe -ftracer -ftree-vectorize -floop-block -floop-interchange -floop-strip-mine"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=native -O2 -pipe -ftracer -ftree-vectorize -floop-block -floop-interchange -floop-strip-mine"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y"
FEATURES="assume-digests distlocks fixpackages metadata-transfer news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://gentoo.mirrors.tds.net/gentoo ftp://gentoo.netnitco.net/pub/mirrors/gentoo/source/ ftp://gentoo.cites.uiuc.edu/pub/gentoo/"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,--sort-common -Wl,-z,combreloc"
LINGUAS="en en_US"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/vmware /usr/local/portage/layman/zugaina /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acpi akode alsa amd64 ao bash-completion branding bzip2 cairo caps cdda cddb cdparanoia cli consolekit cracklib crypt css cups curl dbus dga dri dv dvd dvdr encode exif expat faac faad fam fbcon ffmpeg fftw flac fontconfig fortran geoip ggi gif glib gmp gnutls gphoto2 gpm gs gtk hal iconv icu id3tag idn ieee1394 imagemagick imlib ipv6 ithreads java jfs joystick jpeg jpeg2k kde kdehiddenvisibility kontact lame lcms libsamplerate lm_sensors lzo mad matroska mbox mjpeg mmap mmx mmxext mng modplug modules motif mp3 mpeg mplayer msn mtp mudflap musepack musicbrainz ncurses network network-cron nls nptl nptlonly nsplugin ntfs offensive ogg openal opengl openmp openssl oscar oss pam pcre pdf perl plasma plotutils png policykit pppd qt3support qt4 quicktime rar readline reflection rle ruby samba schroedinger sdl semantic-desktop session smp sndfile speex spell spl sse sse2 sse3 ssl startup-notification stats subversion suid svg sysfs syslog tcl tcpd theora threads tiff truetype twolame udev unicode usb vcd vdpau vim-syntax vnc vorbis wavpack wmf wxwidgets x264 xcb xcomposite xfs xft xine xml xorg xpm xscreensaver xv xvid xvmc zlib" ALSA_CARDS="emu10k1 usb-audio" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="joystick evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Steve Kutnar 2009-11-19 01:37:12 UTC
My /etc/portage/package.mask:

>=media-video/nvidia-settings-190.0
>=sys-libs/glibc-2.11
>=x11-apps/xinput-1.5.0
>=x11-base/xorg-drivers-1.7
>=x11-base/xorg-server-1.7.1
>=x11-drivers/nvidia-drivers-190.0
>=x11-libs/libX11-1.3.2
>=x11-libs/libXScrnSaver-1.2.0
>=x11-libs/libXext-1.1.1
>=x11-libs/libXi-1.3
>=x11-libs/libXinerama-1.1
>=x11-libs/libXtst-1.1.0
>=x11-libs/libXxf86dga-1.1.1
>=x11-libs/libXxf86vm-1.1.0
>=x11-proto/bigreqsproto-1.1.0
>=x11-proto/fixesproto-4.1.1
>=x11-proto/inputproto-2.0
>=x11-proto/recordproto-1.14
>=x11-proto/scrnsaverproto-1.2.0
>=x11-proto/xcmiscproto-1.2.0
>=x11-proto/xextproto-7.1.1
>=x11-proto/xf86bigfontproto-1.2.0
>=x11-proto/xf86dgaproto-2.1
>=x11-proto/xf86driproto-2.1.0
>=x11-proto/xf86vidmodeproto-2.3
>=x11-proto/xineramaproto-1.2
Comment 2 Steve Kutnar 2009-11-19 01:38:57 UTC
Sorry, the proper syntax for the command is "eselect opengl set <option>" where option is one of the available OpenGL implementations seen from "eselect opengl list".
Comment 3 Steve Kutnar 2009-11-19 01:47:14 UTC
Better info...

Apparently, this is the code that is not working:

eselect opengl set --impl-headers ${OPENGL_DIR}

This causes:

!!! Error: Unrecognized option: --impl-headers
exiting
Comment 4 Steve Kutnar 2009-11-19 01:48:59 UTC
Updated summary
Comment 5 Rafał Mużyło 2009-11-19 03:16:49 UTC
As the build.log is missing, it's hard to tell for sure,
but perhaps it's because >=190 series no longer create
libGl.la file, cause recent eselect-opengl doesn't want it anymore ?
Comment 6 Michael Weber (RETIRED) gentoo-dev 2009-11-19 12:36:47 UTC
This missing parameter --impl-headers also happens witth eselect 1.26/1.2.7 and eselect-opengl-1.1.1 and nvidia-drivers-185.18.36-1 during the downgrade from xorg-server-1.6.4 to current stable xorg-server-1.6.3...

Solution: eselect opengl set xorg-x11 && emerge -v1 -j1 xorg-server
and ignore the warning.

Somebody should add a "|| die" begind the eselect statement and figure out in which world --impl-headers is an valid parameter for eselect opengl ...

stupid bug in xorg-server ebuild inside portage tree.


Comment 7 Michael Weber (RETIRED) gentoo-dev 2009-11-19 12:41:16 UTC
(In reply to comment #6)
> stupid bug in xorg-server ebuild inside portage tree.
it's in all current ebuilds ...

n.b. you shall eselect opengl set nvidia after 
emerge -v1 -j1 `eix -I -C x11-drivers --only-names` 
otherwise nvidia-drivers will fail.

Comment 8 Steve Kutnar 2009-11-19 13:48:46 UTC
(In reply to comment #5)
> As the build.log is missing, it's hard to tell for sure,
> but perhaps it's because >=190 series no longer create
> libGl.la file, cause recent eselect-opengl doesn't want it anymore ?
> 

If you read my comments, I said:
"I am currently masking out the xorg 1.7 packages and also masking the
nvidia-drivers 190 series.  See a later comment for my packages.mask."

See comment 1 for my masks.  I'm using xorg 1.6.5 (r1 revision now) and nvidia-drivers 185.18.36-r1.

I didn't feel a build.log would shed any additional light on the subject.  There are two notable points in the build.  The first is the bad parameter to eselect opengl, which causes a failure that is ignored.  The ultimate failure is the portion of the build I did post.
Comment 9 Rémi Cardona (RETIRED) gentoo-dev 2009-11-19 17:48:03 UTC
@Tomáš, can you confirm that we can drop --impl-headers from all xorg-server ebuilds?

Thanks
Comment 10 Tomáš Chvátal (RETIRED) gentoo-dev 2009-11-19 17:55:41 UTC
Yea(In reply to comment #9)
> @Tomáš, can you confirm that we can drop --impl-headers from all xorg-server
> ebuilds?
> 
> Thanks
> 

Yeah we should be able to have it working without --impl-headers with no troubles. So i recommend dropping.
Comment 11 Tomáš Chvátal (RETIRED) gentoo-dev 2009-11-28 09:15:49 UTC
fixed in both main tree and overlay.

Thanks for report.
Comment 12 renato gallo 2010-01-05 15:33:15 UTC
keyboard.c: In function ‘LinuxKeyboardEnable’:                                                                                                                                     
keyboard.c:695: warning: cast to pointer from integer of different size                                                                                                            
keyboard.c: In function ‘LinuxKeyboardDisable’:                                                                                                                                    
keyboard.c:727: warning: cast from pointer to integer of different size                                                                                                            
keyboard.c: In function ‘LinuxKeyboardLeds’:                                                                                                                                       
keyboard.c:758: warning: cast from pointer to integer of different size                                                                                                            
  CC    linux.o                                                                                                                                                                    
linux.c: In function ‘LinuxCheckChown’:                                                                                                                                            
linux.c:62: warning: ignoring return value of ‘chown’, declared with attribute warn_unused_result                                                                                  
linux.c: In function ‘LinuxFindPci’:                                                                                                                                               
linux.c:162: warning: ignoring return value of ‘strtoul’, declared with attribute warn_unused_result                                                                               
  CC    tslib.o                                                                                                                                                                    
  LINK  liblinux.la                                                                                                                                                                
Making all in sdl                                                                                                                                                                  
  CC    sdl.o                                                                                                                                                                      
  LINK  Xsdl                                                                                                                                                                       
libtool: link: cannot find the library `/usr/lib64/libGL.la' or unhandled argument `/usr/lib64/libGL.la'
make[3]: *** [Xsdl] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1
 * ERROR: x11-base/xorg-server-1.7.3.902 failed:
 *   emake failed
Comment 13 renato gallo 2010-01-05 15:34:41 UTC
Created attachment 215303 [details]
PLEASE REOPEN !!!!
Comment 14 Chí-Thanh Christopher Nguyễn gentoo-dev 2010-01-05 16:08:23 UTC
(In reply to comment #12)
> libtool: link: cannot find the library `/usr/lib64/libGL.la' or unhandled
> argument `/usr/lib64/libGL.la'

Your error is totally unrelated to this bug. It comes because you neglected to read the elog messages after emerging mesa. Check /var/log/portage/elog/summary.log