The following is an emerge transcript for 1.0.5536 install: # emerge -Uv nvidia-glx >>> --upgradeonly implies --update... adding --update to options. Calculating dependencies ...done! >>> emerge (1 of 2) media-video/nvidia-kernel-1.0.5336 to / >>> md5 src_uri ;-) NVIDIA-Linux-x86-1.0-5336-pkg1.run >>> Unpacking source... Creating directory NVIDIA-Linux-x86-1.0-5336-pkg1 Verifying archive integrity... OK Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 1.0-5336................................................................................................................................................................................ * Linux kernel 2.4.24 >>> Source unpacked. rm -f nv.o os-agp.o os-interface.o os-registry.o nv-linux.o nv_compiler.h *.d NVdriver nvidia.o make[1]: *** No rule to make target `nvidia.o'. Stop. make: *** [nvidia.o] Error 2 !!! ERROR: media-video/nvidia-kernel-1.0.5336 failed. !!! Function src_compile, Line 116, Exitcode 2 !!! (no error message) This looks like error was made upstream, in the package itself.
I have same error root@work portage # emerge -v media-video/nvidia-kernel Calculating dependencies ...done! >>> emerge (1 of 1) media-video/nvidia-kernel-1.0.5336 to / >>> md5 src_uri ;-) NVIDIA-Linux-x86-1.0-5336-pkg1.run >>> Unpacking source... Creating directory NVIDIA-Linux-x86-1.0-5336-pkg1 Verifying archive integrity... OK Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 1.0-5336................................................................................................................................................................................ * Linux kernel 2.4.22 >>> Source unpacked. rm -f nv.o os-agp.o os-interface.o os-registry.o nv-linux.o nv_compiler.h *.d NVdriver nvidia.o make[1]: *** No rule to make target `nvidia.o'. Stop. make: *** [nvidia.o] Error 2 !!! ERROR: media-video/nvidia-kernel-1.0.5336 failed. !!! Function src_compile, Line 116, Exitcode 2 !!! (no error message)
Looks like nvidia Makefile has been changed : target used to be nvidia.o and now is called module So changing in nvidia-kernel-1.0.5336.ebuild (function src_compile) : make IGNORE_CC_MISMATCH="yes" KERNDIR="/usr/src/linux" clean nvidia.o || die to : make IGNORE_CC_MISMATCH="yes" KERNDIR="/usr/src/linux" clean module || die solves the problem (at least with 2.4 kernels, for 2.5 and 2.6 Makefile.kbuild and Makefile.nvidia are copied from the portage tree, but I don't know what they copied for)
They're copied because the Makefile from the previous version with the minion.de works like a charm for 2.6 but the new one needs some hacking. Anyway, fixed this in CVS.