During my weekly emerge update, the media-video/nvidia-kernel-1.0.6629-r5 failed, I cut out a majority of the error/warnings since they seem repetitive: . . daphne linux # emerge --search nvidia-kernel Searching... [ Results for search key : nvidia-kernel ] [ Applications found : 1 ] * media-video/nvidia-kernel Latest version available: 1.0.6629-r5 Latest version installed: 1.0.6629-r4 Size of downloaded files: 16,116 kB Homepage: http://www.nvidia.com/ Description: Linux kernel module for the NVIDIA X11 driver License: NVIDIA daphne linux # USE="x86" emerge --deep nvidia-kernel Calculating dependencies ...done! >>> emerge (1 of 1) media-video/nvidia-kernel-1.0.6629-r5 to / >>> md5 files ;-) nvidia-kernel-1.0.6629-r5.ebuild >>> md5 files ;-) nvidia-kernel-1.0.8174.ebuild >>> md5 files ;-) nvidia-kernel-1.0.7167-r1.ebuild >>> md5 files ;-) nvidia-kernel-1.0.8178-r2.ebuild >>> md5 files ;-) nvidia-kernel-1.0.7174.ebuild >>> md5 files ;-) nvidia-kernel-1.0.6629-r4.ebuild >>> md5 files ;-) nvidia-kernel-1.0.8178.ebuild >>> md5 files ;-) nvidia-kernel-1.0.6111-r3.ebuild >>> md5 files ;-) nvidia-kernel-1.0.8178-r1.ebuild >>> md5 files ;-) nvidia-kernel-1.0.7676-r1.ebuild >>> md5 files ;-) nvidia-kernel-1.0.7676.ebuild >>> md5 files ;-) nvidia-kernel-1.0.8174-r1.ebuild >>> md5 files ;-) nvidia-kernel-1.0.7667.ebuild >>> md5 files ;-) files/digest-nvidia-kernel-1.0.6111-r3 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.6629-r4 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.6629-r5 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.7167-r1 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.7676-r1 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.8174-r1 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.8178-r1 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.8178-r2 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.7174 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.7667 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.7676 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.8174 >>> md5 files ;-) files/digest-nvidia-kernel-1.0.8178 >>> md5 files ;-) files/nvidia >>> md5 files ;-) files/1.0.6111/nv-pci_find_class.patch >>> md5 files ;-) files/1.0.6111/conftest_koutput_includes.patch >>> md5 files ;-) files/1.0.6111/power-suspend-2.6.9-changes.patch >>> md5 files ;-) files/1.0.6111/vmalloc-reserve.patch >>> md5 files ;-) files/1.0.6111/nv_enable_pci.patch >>> md5 files ;-) files/1.0.6111/nv-remap-range.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1161283.patch >>> md5 files ;-) files/1.0.6629/nv-shutup-warnings.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1165235.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-7174-1296092.diff >>> md5 files ;-) files/1.0.6629/nv-disable-preempt-on-smp_processor_id.patch >>> md5 files ;-) files/1.0.6629/conftest_koutput_includes.patch >>> md5 files ;-) files/1.0.6629/nv-amd64-shutup-warnings.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1189413.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1175225.patch >>> md5 files ;-) files/1.0.6629/nv-fix-memory-limit.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1162524.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-agp_bridge_data.patch >>> md5 files ;-) files/1.0.6629/nv-pgprot-speedup.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1155389.patch >>> md5 files ;-) files/1.0.6629/nv-pgd_offset.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1182399.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1171869.patch >>> md5 files ;-) files/1.0.6629/nv-vm_flags-no-VM_LOCKED.patch >>> md5 files ;-) files/1.0.6629/NVIDIA_kernel-1.0-6629-1201042.diff >>> md5 files ;-) files/1.0.7167/NVIDIA_kernel-1.0-7167-1233959.patch >>> md5 files ;-) files/1.0.7167/NVIDIA_kernel-1.0-7167-disable-preempt-on-smp_processor_id.patch >>> md5 files ;-) files/1.0.7167/NVIDIA_kernel-1.0-7167-1237815.patch >>> md5 files ;-) files/1.0.7167/NVIDIA_kernel-1.0-7167-conftest-koutput-includes.patch >>> md5 files ;-) files/1.0.7167/NVIDIA_kernel-1.0-7167-x86-shutup-warnings.patch >>> md5 files ;-) files/1.0.7167/NVIDIA_kernel-1.0-7167-amd64-shutup-warnings.patch >>> md5 files ;-) files/1.0.7667/NVIDIA_kernel-1.0-7667-KERNEL_VERSION-moved.patch >>> md5 files ;-) files/1.0.7676/NVIDIA_kernel-1.0-7676-1392404.diff >>> md5 files ;-) files/1.0.7676/NVIDIA_kernel-1.0-7676-1361053.diff >>> md5 files ;-) files/1.0.7676/NVIDIA_kernel-1.0-7676-1386866.diff >>> md5 files ;-) files/1.0.7676/NVIDIA_kernel-1.0-7676-1321905.diff >>> md5 files ;-) files/1.0.7676/NVIDIA_kernel-1.0-7676-1359015.diff >>> md5 files ;-) files/1.0.8174/NVIDIA_kernel-1.0-8174-1423627.diff >>> md5 files ;-) files/1.0.8178/NVIDIA_kernel-1.0-8178-U011106.diff >>> md5 files ;-) files/1.0.8178/NVIDIA_kernel-1.0-8178-U122205.diff >>> md5 src_uri ;-) NVIDIA-Linux-x86-1.0-6629-pkg1.run * Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Found sources for kernel version: * 2.6.14-gentoo-r5 * Checking for MTRR support ... [ ok ] >>> Unpacking source... Creating directory NVIDIA-Linux-x86-1.0-6629-pkg1 Verifying archive integrity... OK Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 1.0-6629......................................................................................................................................................................................................... * Applying nv-shutup-warnings.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1155389.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1165235.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1171869.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1175225.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1182399.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1189413.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1201042.diff ... [ ok ] * Applying NVIDIA_kernel-1.0-7174-1296092.diff ... [ ok ] * Applying 2.6 kernel patches * Applying conftest_koutput_includes.patch ... [ ok ] * Applying nv-disable-preempt-on-smp_processor_id.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-1161283.patch ... [ ok ] * Applying NVIDIA_kernel-1.0-6629-agp_bridge_data.patch ... [ ok ] * Converting NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/Makefile.kbuild to use M= instead of SUBDIRS= ... [ ok ] >>> Source unpacked. * Preparing nvidia module NVIDIA: calling KBUILD... make CC=cc KBUILD_VERBOSE=1 -C /usr/src/linux M=/var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv modules make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. mkdir -p /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/.tmp_versions WARNING: Symbol version dump /usr/src/linux-2.6.14-gentoo-r5/Module.symvers is missing; modules will have no dependencies and modversions. make -f scripts/Makefile.build obj=/var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv echo \#define NV_COMPILER \"`cc -v 2>&1 | tail -n 1`\" > /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv_compiler.h cc -Wp,-MD,/var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/.nv.o.d -nostdinc -isystem /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/include -D__KERNEL__ -Iinclude -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -pipe -msoft-float -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -I/var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wno-multichar -Werror -O -fno-common -MD -Wno-cast-qual -Wno-error -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=6629 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -UDEBUG -U_DEBUG -DNDEBUG -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_PCI_DISABLE_DEVICE_PRESENT -DMODULE -DKBUILD_BASENAME=nv -DKBUILD_MODNAME=nvidia -c -o /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.o /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c In file included from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:17, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/config.h:4:28: linux/autoconf.h: No such file or directory In file included from include/linux/kernel.h:11, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:51, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/linkage.h:5:25: asm/linkage.h: No such file or directory In file included from include/linux/types.h:13, from include/linux/kernel.h:13, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:51, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/posix_types.h:47:29: asm/posix_types.h: No such file or directory In file included from include/linux/kernel.h:13, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:51, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/types.h:14:23: asm/types.h: No such file or directory In file included from include/linux/kernel.h:13, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:51, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/types.h:18: error: syntax error before "__kernel_dev_t" include/linux/types.h:18: warning: type defaults to `int' in declaration of `__kernel_dev_t' ... <SNIP> ... include/linux/types.h:177: error: syntax error before '}' token In file included from include/linux/kernel.h:15, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:51, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/bitops.h:3:23: asm/types.h: No such file or directory ... <SNIP> ... include/linux/bitops.h:156: error: `shift' undeclared (first use in this function) In file included from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:51, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/kernel.h:16:27: asm/byteorder.h: No such file or directory include/linux/kernel.h:17:21: asm/bug.h: No such file or directory In file included from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:51, from /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:14: include/linux/kernel.h: At top level: include/linux/kernel.h:104: error: syntax error before "size_t" <SNIP> ... /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:918: error: storage size of `tasklet' isn't known /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:929: error: storage size of `ldata_lock' isn't known /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv-linux.h:932: error: storage size of `at_lock' isn't known /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:211: error: storage size of `nv_fops' isn't known /var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.c:120: warning: `nvos_proc_remove_all' declared `static' but never defined make[3]: *** [/var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv/nv.o] Error 1 make[2]: *** [_module_/var/tmp/portage/nvidia-kernel-1.0.6629-r5/work/NVIDIA-Linux-x86-1.0-6629-pkg1/usr/src/nv] Error 2 NVIDIA: left KBUILD. nvidia.ko failed to build! make[1]: *** [module] Error 1 make: *** [module] Error 2 !!! ERROR: media-video/nvidia-kernel-1.0.6629-r5 failed. !!! Function linux-mod_src_compile, Line 505, Exitcode 2 !!! Unable to make IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/usr/src/linux clean module. !!! If you need support, post the topmost build error, NOT this status message. . . It looks like something basic is missing and sends the build into a tailspin. I tried: . USE="x86" emerge --deep nvidia-kernel . and the same problem.
Oops. The output using "USE="x86" emerge --deep nvidia-kernel" is the same as the output using: "emerge --deep nvidia-kernel"
Have you configured and built a kernel in linux-2.6.14-gentoo-r5? Is that the kernel you're running?
Need more info. Resolving until the reporter shows back up.
I was using the usual commands of: 1. emerge sync 2. emerge --update --newuse --deep --pretend world 3. emerge -uDv 4. emerge -pv depclean 5. emerge -v depclean 6. revdep-rebuild -pv 7. revdep-rebuild -v 8. dispatch-conf Yes, it appears a new kernel was built in step 3. I'm sorry not to follow up on this in a timely fashion, I've had other matters I had to focus on and felt frustrated that an automatic system would create a new kernel which introduces a significant manual intervention without any warning. It seems to me emerge ought to have some sort of "We're going to build a new kernel, do you really want to do this?" rather than undertaking it silently and then having driver build bomb out because the previous steps undertook to build a new kernel and now an incompatability exists. So, my problem does not go towards the particular build of the nvidia driver, but to the design of an update system that introduces a new items, i.e. the kernel, that will require manual intervention before further steps can proceed. I'm currently operating under 2.6.13-gentoo-r3. If I'm missing something critical here, please direct me to the appropriate documentation.
John, have you tried emerging "sys-kernel/linux-headers"? The files you are missing are included in that package.
I tried (as root): emerge search sys-kernel Searching... [ Results for search key : sys-kernel ] [ Applications found : 0 ] emerge search sys-kernel/linux-headers Searching... [ Results for search key : sys-kernel/linux-headers ] [ Applications found : 0 ]
I tried "emerge search linux-headers" and obtained a result: emerge search linux-headers Searching... [ Results for search key : linux-headers ] [ Applications found : 1 ] * sys-kernel/linux-headers Latest version available: 2.6.11-r2 Latest version installed: 2.6.11-r2 Size of downloaded files: 109,371 kB Homepage: http://www.kernel.org/ http://www.gentoo.org/ Description: Linux system headers License: GPL-2 Whereas if I searched: emerge search sys-kernel/linux-headers Searching... [ Results for search key : sys-kernel/linux-headers ] [ Applications found : 0 ] Having overcome this search problem, I'm emerging linux-headers at suggestion in Comment #5.
i did: emerge glibc then: etc-update then: emerge glibc then: emerge --update --newuse --deep world and got the same error message: Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Could not find a usable .config in the kernel source directory. * Please ensure that /usr/src/linux points to a configured set of Linux sources. * If you are using KBUILD_OUTPUT, please set the environment var so that * it points to the necessary object directory so that it might find .config.
I finally went through an upgrade of the kernel and the problem went away.