After syncing and running emerge -auvtND world, portage pulled in media-video/nvidia-settings-190.42 This package fails to compile as follows: make[1]: Entering directory `/var/tmp/portage/media-video/nvidia-settings-190.42/work/nvidia-settings-1.0/src/XF86Config-parser' src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c:32:40: error: X11/extensions/xf86vmproto.h: No such file or directory I have looked at bug #290432 and this appears to be somewhat similar, but that bug deals with different versions of libXxf86vm and xf86vidmodeproto than the ones I have installed on my system. I have re-synced (15 minutes ago) and the patch to the ebuild does NOT make a difference. I have the following versions installed: x11-libs/libXxf86vm-1.0.2 x11-proto/xf86vidmodeproto-2.2.2 Reproducible: Always Steps to Reproduce: 1. emerge =x11-libs/libXxf86vm-1.0.2 =x11-proto/xf86vidmodeproto-2.2.2 2. emerge =nvidia-settings-190.42 3. Observe compile failure Actual Results: Compile fails with "error: X11/extensions/xf86vmproto.h" Expected Results: Compile should not fail hoth ~ # emerge --info Portage 2.1.6.13 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.30-gentoo-r5 x86_64) ================================================================= System uname: Linux-2.6.30-gentoo-r5-x86_64-Intel-R-_Core-TM-_i7_CPU_920_@_2.67GHz-with-gentoo-1.12.11.1 Timestamp of tree: Sun, 01 Nov 2009 19:45:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 4.0_p28 dev-java/java-config: 2.1.9-r1 dev-lang/python: 2.6.2-r1 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.6.4 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.13, 2.63-r1 sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="-Wl,-O1" LINGUAS="en_US en" MAKEOPTS="-j8" 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" SYNC="rsync://192.168.3.1/gentoo-portage" USE="X a52 aac aalib accessibility acl acpi alsa amd64 berkdb branding bzip2 cairo cdr cli consolekit cracklib crypt cups dbus dri dts dvd dvdr eds emboss encode evo fam ffmpeg firefox flac fortran gdbm gif gnome gpm gtk hal iconv java java6 jpeg kde kdeenablefinal libnotify logitech-mouse mad mikmod mmx mng modules mp3 mp4 mpeg mudflap multilib mysql ncurses nls nptl nptlonly nsplugin ogg opengl openmp pam pcre pdf perl png postgres ppds pppd python qt3 qt3support qt4 quicktime readline reflection samba sasl sdl session snmp spell spl sql sqlite sse sse2 sse3 ssl startup-notification svg sysfs tcpd thunar tiff truetype unicode usb vcd vdpau vim-syntax vorbis webkit wma x264 xcb xcomposite xinerama xml xorg xscreensaver xulrunner xv xvid zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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" FOO2ZJS_DEVICES="hpp1505" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_US en" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
*** This bug has been marked as a duplicate of bug 289744 ***
Unless I am seeing something wrong, the patch from the referenced bug does NOT fix the issue here. When emerging this package portage outputs the following: >>> Emerging (1 of 1) media-video/nvidia-settings-190.42 * nvidia-settings-190.42.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] >>> Unpacking source... >>> Unpacking nvidia-settings-190.42.tar.gz to /var/tmp/portage/media-video/nvidia-settings-190.42/work * Applying nvidia-settings-190.42-xf86vidmodeproto.patch ... So it seems to me like it IS applying that patch. If the bug that this is a duplicate of is in fact resolved via that patch, then that is hardly justification to close this one. As I noted, I am NOT running libXxf86vm-1.1.0, I am running x11-libs/libXxf86vm-1.0.2
I am seeing exactly the same thing as #2.
Same here.
Looks like nvidia-settings-190.42 requires a newer version of x11-proto/xf86vidmodeproto which is suspected to contain xf86vmproto.h (see http://lists.x.org/archives/xorg-devel/2009-September/002153.html).
Cross-Reference: http://bugs.gentoo.org/show_bug.cgi?id=291563#c2
Created attachment 209165 [details, diff] nvidia-settings-190.42-xf86vidmodeproto.patch Hello there! I think, patch nvidia-settings-190.42-xf86vidmodeproto.patch is cause of problem. Current patch is --- src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c +++ src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c @@ -28,6 +28,9 @@ #include "msg.h" #include <X11/extensions/xf86vmode.h> +#if !defined(XF86VIDMODE_MAJOR_VERSION) || !defined(XF86VIDMODE_MINOR_VERSION) +#include <X11/extensions/xf86vmproto.h> +#endif /* XF86VidMode Extension protocol defines */ #include <stdlib.h> #include <string.h> But #if apply against _stable_ version x11-proto/xf86vidmodeproto-2.2.2 instead of 2.3. Macros XF86VIDMODE_MAJOR_VERSION and XF86VIDMODE_MINOR_VERSION exists only in x11-proto/xf86vidmodeproto-2.3, so #if string should looks like +#if defined(XF86VIDMODE_MAJOR_VERSION) || defined(XF86VIDMODE_MINOR_VERSION) With fixed patch nvidia-settings emerged without errors.
(In reply to comment #7) > Created an attachment (id=209165) [details] > nvidia-settings-190.42-xf86vidmodeproto.patch > > Hello there! > > I think, patch nvidia-settings-190.42-xf86vidmodeproto.patch is cause of > problem. Current patch is > > --- src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c > +++ src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c > @@ -28,6 +28,9 @@ > #include "msg.h" > > #include <X11/extensions/xf86vmode.h> > +#if !defined(XF86VIDMODE_MAJOR_VERSION) || !defined(XF86VIDMODE_MINOR_VERSION) > +#include <X11/extensions/xf86vmproto.h> > +#endif /* XF86VidMode Extension protocol defines */ > > #include <stdlib.h> > #include <string.h> > > But #if apply against _stable_ version x11-proto/xf86vidmodeproto-2.2.2 instead > of 2.3. Macros XF86VIDMODE_MAJOR_VERSION and XF86VIDMODE_MINOR_VERSION exists > only in x11-proto/xf86vidmodeproto-2.3, so #if string should looks like > > +#if defined(XF86VIDMODE_MAJOR_VERSION) || defined(XF86VIDMODE_MINOR_VERSION) > > With fixed patch nvidia-settings emerged without errors. > Thanks your solution works wonderfully. I was having the same errors others here were reporting. The patch above doesn't work without the changes made above. Thanks
To clarify, hacking open the patch and removing '!' marks from it makes it build.
ALTERNATIVE for all those who only want to exploit the driver itself and don't need nvidia-settings at all; ### In order to remove nvidia-drivers' dependency upon nvidia-settings, disable the USE flag "gtk" for this package by adding the following line into /etc/portage/package.use : x11-drivers/nvidia-drivers -gtk Then you can unmerge nvidia-settings, and upgrade to nvidia-drivers 190.42 . ### DRAWBACK: Unfortunately, it is nvidia-settings which contains support for reading the GPU's temperature sensor; thus you lose track of monitoring it - e.g. in gkrellm.
(In reply to comment #10) > Unfortunately, it is nvidia-settings which contains support for > reading the GPU's temperature sensor; > thus you lose track of monitoring it - e.g. in gkrellm. lm_sensors should be able to read the temperature sensor as well.
(In reply to comment #11) > (In reply to comment #10) > ... should ... ??? Without detailed 'how_to', such hand-waving is not really helpful for people which feel uneasy with kernel-patching etc. yet. My hint was only intended as an _easy_ workaround to be used temporarily until a fixed -r1 hits the tree.
(In reply to comment #7) > Created an attachment (id=209165) [details] > nvidia-settings-190.42-xf86vidmodeproto.patch > > Hello there! > > I think, patch nvidia-settings-190.42-xf86vidmodeproto.patch is cause of > problem. Current patch is > > --- src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c > +++ src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c > @@ -28,6 +28,9 @@ > #include "msg.h" > > #include <X11/extensions/xf86vmode.h> > +#if !defined(XF86VIDMODE_MAJOR_VERSION) || !defined(XF86VIDMODE_MINOR_VERSION) > +#include <X11/extensions/xf86vmproto.h> > +#endif /* XF86VidMode Extension protocol defines */ > > #include <stdlib.h> > #include <string.h> > > But #if apply against _stable_ version x11-proto/xf86vidmodeproto-2.2.2 instead > of 2.3. Macros XF86VIDMODE_MAJOR_VERSION and XF86VIDMODE_MINOR_VERSION exists > only in x11-proto/xf86vidmodeproto-2.3, so #if string should looks like > > +#if defined(XF86VIDMODE_MAJOR_VERSION) || defined(XF86VIDMODE_MINOR_VERSION) > > With fixed patch nvidia-settings emerged without errors. > If include this header : /usr/include/X11/extensions/xf86vmstr.h, where are defined XF86VIDMODE_MAJOR_VERSION and XF86VIDMODE_MINOR_VERSION then it builds too and I think it will be more correctly.
Should be fixed by solution from bug 291563.