The ebuild for nvidia-kernel is failing - tried replacing kernel source but received same error Reproducible: Always Steps to Reproduce: 1. emerge gentoo-dev-sources 2. emerge nvidia-glx Actual Results: root@tumbleweed05 src # emerge nvidia-glx Calculating dependencies ...done! >>> emerge (1 of 3) media-video/nvidia-kernel-1.0.6111-r3 to / x86 >>> md5 src_uri ;-) NVIDIA-Linux-x86-1.0-6111-pkg1.run x86 x86 >>> Unpacking source... * /usr/src/linux is a symbolic link * Determining the real directory of the Linux kernel source code * Building for Linux 2.6.9-gentoo-r1 found in /usr/src/linux Creating directory NVIDIA-Linux-x86-1.0-6111-pkg1 Verifying archive integrity... OK Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 1.0-6111.......................................................................................................................................................................................................... * Applying power-suspend-2.6.9-changes.patch ... [ ok ] * Applying nv_enable_pci.patch ... [ ok ] * Applying vmalloc-reserve.patch ... [ ok ] * Applying nv-pci_find_class.patch ... [ ok ] * Applying nv-remap-range.patch ... [ ok ] * Applying conftest_koutput_includes.patch ... [ ok ] >>> Source unpacked. x86 * Using /usr/src/linux as kernel output location NVIDIA: calling KBUILD... make -C /usr/src/linux \ KBUILD_SRC=/usr/src/linux-2.6.9-gentoo-r1 KBUILD_VERBOSE=1 \ KBUILD_CHECK= KBUILD_EXTMOD="/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv" \ -f /usr/src/linux-2.6.9-gentoo-r1/Makefile modules mkdir -p /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/.tmp_versions make -f /usr/src/linux-2.6.9-gentoo-r1/scripts/Makefile.build obj=/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv echo \#define NV_COMPILER \"`gcc -v 2>&1 | tail -n 1`\" > /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv_compiler.h gcc -Wp,-MD,/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/.nv.o.d -nostdinc -iwithprefix include -D__KERNEL__ -Iinclude -Iinclude2 -I/usr/src/linux-2.6.9-gentoo-r1/include -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O2 -fomit-frame-pointer -Wdeclaration-after-statement -pipe -msoft-float -mpreferred-stack-boundary=2 -march=pentium4 -I/usr/src/linux-2.6.9-gentoo-r1/include/asm-i386/mach-default -Iinclude/asm-i386/mach-default -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -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=6111 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -UDEBUG -U_DEBUG -DNDEBUG -DREMAP_PAGE_RANGE_5 -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_CLASS_SIMPLE_PRESENT -DHAVE_PCI_FIND_CLASS -DMODULE -DKBUILD_BASENAME=nv -DKBUILD_MODNAME=nvidia -c -o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c In file included from include/linux/list.h:7, from include/linux/wait.h:23, from include/asm/semaphore.h:41, from include/linux/sched.h:18, from include/linux/module.h:10, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:52, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c:14: include/linux/prefetch.h: In function `prefetch_range': include/linux/prefetch.h:62: warning: pointer of type `void *' used in arithmetic In file included from include/linux/dmapool.h:14, from include/linux/pci.h:821, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:75, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c:14: include/asm/io.h: In function `check_signature': include/asm/io.h:240: warning: wrong type argument to increment gcc -Wp,-MD,/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/.os-agp.o.d -nostdinc -iwithprefix include -D__KERNEL__ -Iinclude -Iinclude2 -I/usr/src/linux-2.6.9-gentoo-r1/include -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O2 -fomit-frame-pointer -Wdeclaration-after-statement -pipe -msoft-float -mpreferred-stack-boundary=2 -march=pentium4 -I/usr/src/linux-2.6.9-gentoo-r1/include/asm-i386/mach-default -Iinclude/asm-i386/mach-default -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -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=6111 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -UDEBUG -U_DEBUG -DNDEBUG -DREMAP_PAGE_RANGE_5 -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_CLASS_SIMPLE_PRESENT -DHAVE_PCI_FIND_CLASS -DMODULE -DKBUILD_BASENAME=os_agp -DKBUILD_MODNAME=nvidia -c -o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-agp.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-agp.c In file included from include/linux/list.h:7, from include/linux/wait.h:23, from include/asm/semaphore.h:41, from include/linux/sched.h:18, from include/linux/module.h:10, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:52, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-agp.c:24: include/linux/prefetch.h: In function `prefetch_range': include/linux/prefetch.h:62: warning: pointer of type `void *' used in arithmetic In file included from include/linux/dmapool.h:14, from include/linux/pci.h:821, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:75, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-agp.c:24: include/asm/io.h: In function `check_signature': include/asm/io.h:240: warning: wrong type argument to increment gcc -Wp,-MD,/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/.os-interface.o.d -nostdinc -iwithprefix include -D__KERNEL__ -Iinclude -Iinclude2 -I/usr/src/linux-2.6.9-gentoo-r1/include -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O2 -fomit-frame-pointer -Wdeclaration-after-statement -pipe -msoft-float -mpreferred-stack-boundary=2 -march=pentium4 -I/usr/src/linux-2.6.9-gentoo-r1/include/asm-i386/mach-default -Iinclude/asm-i386/mach-default -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -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=6111 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -UDEBUG -U_DEBUG -DNDEBUG -DREMAP_PAGE_RANGE_5 -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_CLASS_SIMPLE_PRESENT -DHAVE_PCI_FIND_CLASS -DMODULE -DKBUILD_BASENAME=os_interface -DKBUILD_MODNAME=nvidia -c -o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-interface.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-interface.c In file included from include/linux/list.h:7, from include/linux/wait.h:23, from include/asm/semaphore.h:41, from include/linux/sched.h:18, from include/linux/module.h:10, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:52, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-interface.c:26: include/linux/prefetch.h: In function `prefetch_range': include/linux/prefetch.h:62: warning: pointer of type `void *' used in arithmetic In file included from include/linux/dmapool.h:14, from include/linux/pci.h:821, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:75, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-interface.c:26: include/asm/io.h: In function `check_signature': include/asm/io.h:240: warning: wrong type argument to increment gcc -Wp,-MD,/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/.os-registry.o.d -nostdinc -iwithprefix include -D__KERNEL__ -Iinclude -Iinclude2 -I/usr/src/linux-2.6.9-gentoo-r1/include -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O2 -fomit-frame-pointer -Wdeclaration-after-statement -pipe -msoft-float -mpreferred-stack-boundary=2 -march=pentium4 -I/usr/src/linux-2.6.9-gentoo-r1/include/asm-i386/mach-default -Iinclude/asm-i386/mach-default -I/var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -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=6111 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -UDEBUG -U_DEBUG -DNDEBUG -DREMAP_PAGE_RANGE_5 -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_CLASS_SIMPLE_PRESENT -DHAVE_PCI_FIND_CLASS -DMODULE -DKBUILD_BASENAME=os_registry -DKBUILD_MODNAME=nvidia -c -o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-registry.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-registry.c In file included from include/linux/list.h:7, from include/linux/wait.h:23, from include/asm/semaphore.h:41, from include/linux/sched.h:18, from include/linux/module.h:10, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:52, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-registry.c:14: include/linux/prefetch.h: In function `prefetch_range': include/linux/prefetch.h:62: warning: pointer of type `void *' used in arithmetic In file included from include/linux/dmapool.h:14, from include/linux/pci.h:821, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-linux.h:75, from /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-registry.c:14: include/asm/io.h: In function `check_signature': include/asm/io.h:240: warning: wrong type argument to increment ld -m elf_i386 -r -o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nvidia.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv-kernel.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-agp.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-interface.o /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/os-registry.o Building modules, stage 2. make -rR -f /usr/src/linux-2.6.9-gentoo-r1/scripts/Makefile.modpost scripts/mod/modpost -i /usr/src/linux-2.6.9-gentoo-r1/Module.symvers /var/tmp/portage/nvidia-kernel-1.0.6111-r3/work/NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nvidia.o /bin/sh: line 1: scripts/mod/modpost: No such file or directory make[4]: *** [__modpost] Error 127 make[3]: *** [modules] Error 2 make[2]: *** [modules] 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.6111-r3 failed. !!! Function src_compile, Line 150, Exitcode 2 !!! Failed to build module !!! If you need support, post the topmost build error, NOT this status message. Expected Results: umm....
Run : make modules in your kernel source directory.
Thanks dude - that worked - maybe: if kernel=uncompiled then { print "your kernel source is not properly set up to compile this module - would you like me to set it up for you?"; } This also applies to vmware, which needs to compile modules and will fail for the same reason.
Thats not a bad idea, but it does belong more in an eclass. Fixed. Johnm: since you were changing the kernel-mod eclasses maybe you want to consider checking this aswell, that if modules are supported in the kernel, then check make modules (ie scripts/mod/modpost exists) was actually run.