Comment 5 for bug 631007

Revision history for this message
Theodore Ts'o (tytso) wrote :

Yes, I'm able to reproduce it, and I even understand why it's failing now.

The problem is that the kernel makefile is using the -MD option to request that the makefile dependency information gets dumped to file (i.e., /var/lib/dkms/nvidia-current/260.19.12/build/.nv.o.d). But ccache 2.4 doesn't understand the -MD command, so it doesn't emulate it if nv.o is in the ccache's cache. Hence the .nv.o.d file is missing, and hence the fixdep command executed by the Kernel makefile fails, and hence, the dkms build command fails.

This is fixed in ccache 3.0 (and ccache 3.1 is the latest version); by adding teaching ccache how to deal with the gcc option -MD.

The easy workaround for now is to make sure the environment variable CCACHE_DISABLE is set before installing a module that uses dkms, such as nvidia-current