最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

makefile - An out-of-tree module breaks the kernel build - Stack Overflow

programmeradmin2浏览0评论

I am running a Debian distro, and the system has a single external module installed. I apologize for the lengthy post, but the logs help clarify.

khaled@kh-deb:~$ uname -a
Linux kh-deb 6.12.6-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.6-1 (2024-12-21) x86_64 GNU/Linux

khaled@kh-deb:~$ sudo dkms status
nvidia-current/535.216.03, 6.1.0-25-amd64, x86_64: installed
nvidia-current/535.216.03, 6.12.6-amd64, x86_64: installed

I can compile the kernel from source successfully.

khaled@kh-deb:~/linux_work/linux:~$ make mrproper
make defconfig
make CC='ccache gcc' -j$(nproc)
sudo make modules_prepare
sudo make modules_install

But when I install, the dkms autoinstall starts and fails to install 'nvidia-current'

khaled@kh-deb:~/linux_work/linux$ sudo make install
  INSTALL /boot
run-parts: executing /etc/kernel/postinst.d/dkms 6.13.0-rc7-00043-g619f0b6fad52 /boot/vmlinuz-6.13.0-rc7-00043-g619f0b6fad52
dkms: running auto installation service for kernel 6.13.0-rc7-00043-g619f0b6fad52.
The kernel is built without module signing facility, modules won't be signed

Building module:
Cleaning build area...(bad exit status: 2)
Failed command:
make KERNEL_UNAME=6.13.0-rc7-00043-g619f0b6fad52 clean
Building module(s)...(bad exit status: 2)
Failed command:
env NV_VERBOSE=1 make -j8 modules KERNEL_UNAME=6.13.0-rc7-00043-g619f0b6fad52
Error! Bad return status for module build on kernel: 6.13.0-rc7-00043-g619f0b6fad52 (x86_64)
Consult /var/lib/dkms/nvidia-current/535.216.03/build/make.log for more information.
dkms autoinstall on 6.13.0-rc7-00043-g619f0b6fad52/x86_64 failed for nvidia-current(10)
Error! One or more modules failed to install during autoinstall.
Refer to previous errors for more information.
dkms: autoinstall for kernel: 6.13.0-rc7-00043-g619f0b6fad52 failed!
run-parts: /etc/kernel/postinst.d/dkms exited with return code 11
make[1]: *** [arch/x86/Makefile:321: install] Error 11
make: *** [Makefile:251: __sub-make] Error 2

As per the logs, inspecting /var/lib/dkms/nvidia-current/535.216.03/build/make.log

khaled@kh-deb:~/linux_work/linux$ cat /var/lib/dkms/nvidia-current/535.216.03/build/make.log
DKMS make.log for nvidia-current-535.216.03 for kernel 6.13.0-rc7-00043-g619f0b6fad52 (x86_64)
Fri Jan 17 02:01:55 AM EET 2025
Makefile:18: /Kbuild: No such file or directory
make[2]: *** No rule to make target '/Kbuild'.  Stop.

So, I refer to the kernel docs about external modules .html#how-to-build-external-modules And prepare the build and install commands sudo make -C ~/linux_work/linux/ M=$PWD to run from inside /var/libs/dkms/nvidia-currrent/source

khaled@kh-deb:/var/lib/dkms/nvidia-current/535.216.03/source$ sudo make -C ~/linux_work/linux/ M=$PWD 
make: Entering directory '/home/khaled/linux_work/linux'
make[1]: Entering directory '/usr/src/nvidia-current-535.216.03'
  MODPOST Module.symvers
make[1]: Leaving directory '/usr/src/nvidia-current-535.216.03'
make: Leaving directory '/home/khaled/linux_work/linux'

khaled@kh-deb:/var/lib/dkms/nvidia-current/535.216.03/source$ sudo make -C ~/linux_work/linux/ M=$PWD modules_install
make: Entering directory '/home/khaled/linux_work/linux'
make[1]: Entering directory '/usr/src/nvidia-current-535.216.03'
  DEPMOD  /lib/modules/6.13.0-rc7-00043-g619f0b6fad52
make[1]: Leaving directory '/usr/src/nvidia-current-535.216.03'
make: Leaving directory '/home/khaled/linux_work/linux'

No errors or anything, but I can't find the module installed, I inspect /lib/modules/<new kernel>/ but no upates/ directory, and dmks status shows doesn't show the new version.

khaled@kh-deb:~/linux_work/linux$ ll /lib/modules/6.13.0-rc7-00043-g619f0b6fad52/
total 204K
drwxr-xr-x 3 root root 4.0K Jan 17 02:23 .
drwxr-xr-x 5 root root 4.0K Jan 17 01:59 ..
lrwxrwxrwx 1 root root   32 Jan 17 01:59 build -> /home/khaled/linux_work/linux
drwxr-xr-x 5 root root 4.0K Jan 17 01:59 kernel
-rw-r--r-- 1 root root  862 Jan 17 02:23 modules.alias
-rw-r--r-- 1 root root 1.5K Jan 17 02:23 modules.alias.bin
-rw-r--r-- 1 root root  12K Jan 17 01:59 modules.builtin
-rw-r--r-- 1 root root  11K Jan 17 02:23 modules.builtin.alias.bin
-rw-r--r-- 1 root root  15K Jan 17 02:23 modules.builtin.bin
-rw-r--r-- 1 root root 114K Jan 17 01:59 modules.builtin.modinfo
-rw-r--r-- 1 root root  340 Jan 17 02:23 modules.dep
-rw-r--r-- 1 root root  975 Jan 17 02:23 modules.dep.bin
-rw-r--r-- 1 root root    0 Jan 17 02:23 modules.devname
-rw-r--r-- 1 root root  331 Jan 17 01:59 modules.order
-rw-r--r-- 1 root root   89 Jan 17 02:23 modules.softdep
-rw-r--r-- 1 root root   49 Jan 17 02:23 modules.symbols
-rw-r--r-- 1 root root   12 Jan 17 02:23 modules.symbols.bin
-rw-r--r-- 1 root root   55 Jan 17 02:23 modules.weakdep

khaled@kh-deb:~/linux_work/linux$ sudo dkms status
nvidia-current/535.216.03, 6.1.0-25-amd64, x86_64: installed
nvidia-current/535.216.03, 6.12.6-amd64, x86_64: installed

Trying to rerun make install in the kernel tree, prints the same issue.

I would appreciate help with understanding the following:

1- What am I missing in this configuration?

2- As an alternative solution that does not use out-of-tree modules, I check nouveau or iGPU drivers in menuconfig and install, but dkms still pops up breaking the build. I can't find any config in menuconfig to disable 'nvidia-current' proprietary drivers, dkms or even all out-of-tree modules.

Thank you.

I am running a Debian distro, and the system has a single external module installed. I apologize for the lengthy post, but the logs help clarify.

khaled@kh-deb:~$ uname -a
Linux kh-deb 6.12.6-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.6-1 (2024-12-21) x86_64 GNU/Linux

khaled@kh-deb:~$ sudo dkms status
nvidia-current/535.216.03, 6.1.0-25-amd64, x86_64: installed
nvidia-current/535.216.03, 6.12.6-amd64, x86_64: installed

I can compile the kernel from source successfully.

khaled@kh-deb:~/linux_work/linux:~$ make mrproper
make defconfig
make CC='ccache gcc' -j$(nproc)
sudo make modules_prepare
sudo make modules_install

But when I install, the dkms autoinstall starts and fails to install 'nvidia-current'

khaled@kh-deb:~/linux_work/linux$ sudo make install
  INSTALL /boot
run-parts: executing /etc/kernel/postinst.d/dkms 6.13.0-rc7-00043-g619f0b6fad52 /boot/vmlinuz-6.13.0-rc7-00043-g619f0b6fad52
dkms: running auto installation service for kernel 6.13.0-rc7-00043-g619f0b6fad52.
The kernel is built without module signing facility, modules won't be signed

Building module:
Cleaning build area...(bad exit status: 2)
Failed command:
make KERNEL_UNAME=6.13.0-rc7-00043-g619f0b6fad52 clean
Building module(s)...(bad exit status: 2)
Failed command:
env NV_VERBOSE=1 make -j8 modules KERNEL_UNAME=6.13.0-rc7-00043-g619f0b6fad52
Error! Bad return status for module build on kernel: 6.13.0-rc7-00043-g619f0b6fad52 (x86_64)
Consult /var/lib/dkms/nvidia-current/535.216.03/build/make.log for more information.
dkms autoinstall on 6.13.0-rc7-00043-g619f0b6fad52/x86_64 failed for nvidia-current(10)
Error! One or more modules failed to install during autoinstall.
Refer to previous errors for more information.
dkms: autoinstall for kernel: 6.13.0-rc7-00043-g619f0b6fad52 failed!
run-parts: /etc/kernel/postinst.d/dkms exited with return code 11
make[1]: *** [arch/x86/Makefile:321: install] Error 11
make: *** [Makefile:251: __sub-make] Error 2

As per the logs, inspecting /var/lib/dkms/nvidia-current/535.216.03/build/make.log

khaled@kh-deb:~/linux_work/linux$ cat /var/lib/dkms/nvidia-current/535.216.03/build/make.log
DKMS make.log for nvidia-current-535.216.03 for kernel 6.13.0-rc7-00043-g619f0b6fad52 (x86_64)
Fri Jan 17 02:01:55 AM EET 2025
Makefile:18: /Kbuild: No such file or directory
make[2]: *** No rule to make target '/Kbuild'.  Stop.

So, I refer to the kernel docs about external modules https://docs.kernel.org/kbuild/modules.html#how-to-build-external-modules And prepare the build and install commands sudo make -C ~/linux_work/linux/ M=$PWD to run from inside /var/libs/dkms/nvidia-currrent/source

khaled@kh-deb:/var/lib/dkms/nvidia-current/535.216.03/source$ sudo make -C ~/linux_work/linux/ M=$PWD 
make: Entering directory '/home/khaled/linux_work/linux'
make[1]: Entering directory '/usr/src/nvidia-current-535.216.03'
  MODPOST Module.symvers
make[1]: Leaving directory '/usr/src/nvidia-current-535.216.03'
make: Leaving directory '/home/khaled/linux_work/linux'

khaled@kh-deb:/var/lib/dkms/nvidia-current/535.216.03/source$ sudo make -C ~/linux_work/linux/ M=$PWD modules_install
make: Entering directory '/home/khaled/linux_work/linux'
make[1]: Entering directory '/usr/src/nvidia-current-535.216.03'
  DEPMOD  /lib/modules/6.13.0-rc7-00043-g619f0b6fad52
make[1]: Leaving directory '/usr/src/nvidia-current-535.216.03'
make: Leaving directory '/home/khaled/linux_work/linux'

No errors or anything, but I can't find the module installed, I inspect /lib/modules/<new kernel>/ but no upates/ directory, and dmks status shows doesn't show the new version.

khaled@kh-deb:~/linux_work/linux$ ll /lib/modules/6.13.0-rc7-00043-g619f0b6fad52/
total 204K
drwxr-xr-x 3 root root 4.0K Jan 17 02:23 .
drwxr-xr-x 5 root root 4.0K Jan 17 01:59 ..
lrwxrwxrwx 1 root root   32 Jan 17 01:59 build -> /home/khaled/linux_work/linux
drwxr-xr-x 5 root root 4.0K Jan 17 01:59 kernel
-rw-r--r-- 1 root root  862 Jan 17 02:23 modules.alias
-rw-r--r-- 1 root root 1.5K Jan 17 02:23 modules.alias.bin
-rw-r--r-- 1 root root  12K Jan 17 01:59 modules.builtin
-rw-r--r-- 1 root root  11K Jan 17 02:23 modules.builtin.alias.bin
-rw-r--r-- 1 root root  15K Jan 17 02:23 modules.builtin.bin
-rw-r--r-- 1 root root 114K Jan 17 01:59 modules.builtin.modinfo
-rw-r--r-- 1 root root  340 Jan 17 02:23 modules.dep
-rw-r--r-- 1 root root  975 Jan 17 02:23 modules.dep.bin
-rw-r--r-- 1 root root    0 Jan 17 02:23 modules.devname
-rw-r--r-- 1 root root  331 Jan 17 01:59 modules.order
-rw-r--r-- 1 root root   89 Jan 17 02:23 modules.softdep
-rw-r--r-- 1 root root   49 Jan 17 02:23 modules.symbols
-rw-r--r-- 1 root root   12 Jan 17 02:23 modules.symbols.bin
-rw-r--r-- 1 root root   55 Jan 17 02:23 modules.weakdep

khaled@kh-deb:~/linux_work/linux$ sudo dkms status
nvidia-current/535.216.03, 6.1.0-25-amd64, x86_64: installed
nvidia-current/535.216.03, 6.12.6-amd64, x86_64: installed

Trying to rerun make install in the kernel tree, prints the same issue.

I would appreciate help with understanding the following:

1- What am I missing in this configuration?

2- As an alternative solution that does not use out-of-tree modules, I check nouveau or iGPU drivers in menuconfig and install, but dkms still pops up breaking the build. I can't find any config in menuconfig to disable 'nvidia-current' proprietary drivers, dkms or even all out-of-tree modules.

Thank you.

Share Improve this question asked Jan 18 at 22:54 khaledkhaled 436 bronze badges 6
  • "I can compile the kernel from source successfully" - That could be a false positive. "make defconfig" - That's an ambiguous command without knowing what ARCH and PLATFORM are defined as in the environment. Using an actual, existing defconfig file (e.g. make x86_64_defconfig) would be IMO preferable. Then try using make menuconfig to enable module signing. – sawdust Commented Jan 19 at 2:02
  • @sawdust unfortunately did not work, defconfig uses x86_64_defconfig. And enabling MODULE_SIG_ALL did not solve the problem, still the same issue when building, but thank you. – khaled Commented Jan 20 at 1:04
  • Does the procedure work if you build a stable kernel rather than an -rc kernel? – Ian Abbott Commented Jan 20 at 10:45
  • @IanAbbott yeah I tried version 6.12 (stable) and the latest upstream (6.13-rc8) but no luck. Thank you. – khaled Commented Jan 20 at 13:32
  • When you tried manually to build and install, have you added the target to make like modules_install? – 0andriy Commented Jan 21 at 21:34
 |  Show 1 more comment

1 Answer 1

Reset to default 0

I had to throw in the towel and uninstall nvidia proprietary drivers. So the dkms does not find anything to install and then building and running the new kernel works fine.

发布评论

评论列表(0)

  1. 暂无评论