Passing --kernelsourcedir=... explicitly: # LC_ALL=C dkms build -m virtualbox -v 6.1.18 -k 5.10.0-3 --kernelsourcedir=/usr/src/linux-headers-5.10.0-3-amd64
Preparing kernel 5.10.0-3 for module build: (This is not compiling a kernel, just preparing kernel symbols) Storing current .config to be restored when complete Running Generic preparation routine make mrproper...(bad exit status: 2) Warning: using /usr/src/linux-headers-5.10.0-3-amd64/.config (I hope this is the correct config for this kernel) make oldconfig...(bad exit status: 2) make prepare-all...(bad exit status: 2) Building module: cleaning build area... make -j4 KERNELRELEASE=5.10.0-3 -C /usr/src/linux-headers-5.10.0-3-amd64 M=/var/lib/dkms/virtualbox/6.1.18/build...(bad exit status: 2) Error! Bad return status for module build on kernel: 5.10.0-3 (x86_64) Consult /var/lib/dkms/virtualbox/6.1.18/build/make.log for more information. # cat /var/lib/dkms/virtualbox/6.1.18/build/make.log DKMS make.log for virtualbox-6.1.18 for kernel 5.10.0-3 (x86_64) Mon Feb 8 15:19:40 CET 2021 make: Entering directory '/usr/src/linux-headers-5.10.0-3-amd64' ERROR: Kernel configuration is invalid. include/generated/autoconf.h or include/config/auto.conf are missing. Run 'make oldconfig && make prepare' on kernel src to fix it. make[1]: *** [/usr/src/linux-headers-5.10.0-3-common/Makefile:717: include/config/auto.conf] Fehler 1 make: *** [/usr/src/linux-headers-5.10.0-3-common/Makefile:185: __sub-make] Error 2 make: Leaving directory '/usr/src/linux-headers-5.10.0-3-amd64' Why the hell is DKMS entering and searching in /usr/src/linux-headers-5.10.0-3-common/ directory? # find /usr/src/linux-headers-5.10.0-3-amd64 -name autoconf.h [ empty ] # find /usr/src/linux-headers-5.10.0-3-amd64 -name auto.conf /usr/src/linux-headers-5.10.0-3-amd64/include/config/auto.conf LOL, there exists an include/config/auto.conf file! Confused, - Sedat -