* Preparing thinkpad_ec module make HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KSRC=/usr/src/linux KBUILD=/usr/src/linux default make -C /usr/src/linux M=/var/tmp/paludis/app-laptop-tp_smapi-0.40/work/tp_smapi-0.40 O=/usr/src/linux modules make[1]: Entering directory `/usr/src/linux-2.6.32-rc1' make[1]: Leaving directory `/usr/src/linux-2.6.32-rc1' /usr/src/linux-2.6.32-rc1/Makefile:210: *** ARCH changed from "i386" to "x86". Use "make mrproper" to fix it up. Stop. make[1]: *** [sub-make] Error 2 make: *** [modules] Error 2 /usr/libexec/paludis/utils/emake: emake returned error 2 !!! ERROR in app-laptop/tp_smapi-0.40::gentoo: !!! In linux-mod_src_compile at line 3926 !!! Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KSRC=/usr/src/linux KBUILD=/usr/src/linux default !!! Call stack: !!! * linux-mod_src_compile (/var/tmp/paludis/app-laptop-tp_smapi-0.40/temp/loadsaveenv:3926) !!! * src_compile (/var/tmp/paludis/app-laptop-tp_smapi-0.40/temp/loadsaveenv:4886) !!! * ebuild_f_compile (/usr/libexec/paludis/2/src_compile.bash:56) !!! * ebuild_main (/usr/libexec/paludis/ebuild.bash:598) !!! * main (/usr/libexec/paludis/ebuild.bash:626) diefunc: making ebuild PID 10159 exit with error die trap: exiting with error. Install error: * In program paludis --log-level qa --preserve-world --install --serialised 0.37 package;=app-laptop/tp_smapi-0.40:0::gentoo;installed;has_all_deps;P: * When performing install action from command line: * When executing install task: * When installing 'app-laptop/tp_smapi-0.40:0::gentoo' replacing { 'app-laptop/tp_smapi-0.40:0::installed' }: * When running an ebuild command on 'app-laptop/tp_smapi-0.40:0::gentoo': * Install error: Install failed for 'app-laptop/tp_smapi-0.40:0::gentoo' It seems that now ARCH should be i386 back and Makefile sets SRCARCH to x86. PS. Problem occures also with default config PPS. Setting in toolchain eclass to report i386 for kernel works. Reproducible: Always
I get the same ARCH error message as Comment #0 mentions. I was attempting to install nvidia-drivers against vanilla-sources-2.6.32-rc1 I downgraded to 2.6.31.1 and it works perfectly fine.
*** Bug 287335 has been marked as a duplicate of this bug. ***
*** Bug 286835 has been marked as a duplicate of this bug. ***
Created attachment 206028 [details, diff] Add a check in toolchain-funcs to check for kernel versions 2.6.32 and up. I had to reboot into the new kernel before this would work, so it can detect the new kernel version.
Also, in case anyone doesn't know, the file is located in /usr/portage/eclass/
Kelvie's patch worked for me.
Thanks Kelvie. Fixed also for me.
Created attachment 206311 [details, diff] Unifying kernel arch to x86_64 IMHO there are overminded code. Physically trees are unifyed (x86_64 & x86), but kernels - 2.6.20-2.6.32 - understanding ARCH=x86_64 like native. Else show me case, when attached patch is wrong.
Created attachment 206313 [details, diff] Unifying kernel arch to x86_64 + check for kernel versions 2.6.32 for i386 Kelvie's x86/i386 and unifyed x86_64 for amd64.
Created attachment 206318 [details, diff] x86 -> i386, amd64 -> x86_64, no kernel version check I check on 2.6.27 - for 32 bit good ARCH=i386 too. Then no sense to check version. Just 32bit is i386, 64bit is x86_64. If no external reason to else...
Created attachment 206321 [details, diff] same, but minimal
support for older versions should not be dropped
toolchain-funcs-fix.patch works wonderfully well for me.
(In reply to comment #12) > support for older versions should not be dropped > IMHO all versions works same. Just once apon a time "i386" and "x86_64" turned from real arches to aliases for "x86" tree. Only if one lost version do not have temp. bug (I don't know)... Current code IMHO just trying to use "real" arch, but kernel.org team looks like primary support for aliases.
*** Bug 288039 has been marked as a duplicate of this bug. ***
*** Bug 286900 has been marked as a duplicate of this bug. ***
opinions really arent good enough. the only way that patch will get merged is if it is actually tested against the versions in question. otherwise your only option is to add another test for newer kernel versions.
*** Bug 288885 has been marked as a duplicate of this bug. ***
With git-sources-2.6.32_rc4-r1 on amd64, the attachment #206321 [details, diff] solved the compilation error of both : x11-drivers/nvidia-drivers-190.40 (bug #288720) and app-misc/lirc-0.8.6 (part of #286227)
The problematic commit (575543347b5baed0ca927cb90ba8807396fe9cc9, kbuild: save ARCH & CROSS_COMPILE when building a kernel) was reverted in 2.6.32-rc5. So these patches don't seem to be needed anymore.
no acceptable patches have been posted, and the issue only presents in -rc kernels, so nothing to be done here
*** Bug 288720 has been marked as a duplicate of this bug. ***
Im having the same (i think) issue with the 2.6.31-tuxonice kernel.. can someone please verify and/or suggest if I should open a new bug? -db tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:244: error: unknown field 'client_register' specified in initializer /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:244: warning: initialization makes integer from pointer without a cast /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:244: error: initializer element is not computable at load time /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:244: error: (near initialization for 'nv_i2c_adapter_prototype.level') /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:245: error: unknown field 'client_unregister' specified in initializer /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:245: warning: missing braces around initializer /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:245: warning: (near initialization for 'nv_i2c_adapter_prototype.bus_lock') /var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.c:245: warning: initialization makes integer from pointer without a cast make[4]: *** [/var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv/nv-i2c.o] Error 1 make[3]: *** [_module_/var/tmp/portage/x11-drivers/nvidia-drivers-180.60/work/NVIDIA-Linux-x86-180.60-pkg0/usr/src/nv] Error 2 make[2]: *** [sub-make] Error 2 NVIDIA: left KBUILD. nvidia.ko failed to build! make[1]: *** [module] Error 1 make: *** [module] Error 2 * * ERROR: x11-drivers/nvidia-drivers-180.60 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3880: Called linux-mod_src_compile * environment, line 2886: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/lib/modules/2.6.31-tuxonice/build HOST_CC=i686-pc-linux-gnu-gcc clean module * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-180.60/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-180.60/temp/environment'. * >>> Failed to emerge x11-drivers/nvidia-drivers-180.60, Log file: >>> '/var/tmp/portage/x11-drivers/nvidia-drivers-180.60/temp/build.log' * Messages for package x11-drivers/nvidia-drivers-180.60: * * ERROR: x11-drivers/nvidia-drivers-180.60 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3880: Called linux-mod_src_compile * environment, line 2886: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * The die message: * Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/lib/modules/2.6.31-tuxonice/build HOST_CC=i686-pc-linux-gnu-gcc clean module * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-180.60/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-180.60/temp/environment'. * * IMPORTANT: 1 news items need reading for repository 'gentoo'. * Use eselect news to read news items.
Adding me to CC, and here is a link to my last adventures: http://www.nvnews.net/vbulletin/showthread.php?t=144436 After changing toolchain-funcs.eclass according to comment #19, compilation of nvidia-drivers-195.36.03 under vanilla-sources-2.6.33-rc6 (amd64) was successful.