问题标签 [dkms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
103 浏览

linux-kernel - 如果内核升级与模块不兼容,有没有办法限制它?

我编写了一个模块,它以 .deb 文件的形式分发,并使用 DKMS 使用内核更新进行重建。我想要的是能够限制系统升级内核超出模块可以兼容的范围。例如,应该为任何升级到 4.19.1 的内核重新构建该模块。理想情况下,这将被内置到 .deb 文件中,但第二种解决方案只是限制系统安装超出特定版本的内核。第三种选择是向用户显示该模块不适用于正在安装的内核版本的警告。

过去,驱动程序是手动安装的,并且必须在用户不知道的每个内核更新时重新构建。源文件头检查内核版本的兼容性,如果它超出允许的内核范围,则不会构建。

0 投票
1 回答
1492 浏览

ubuntu - 构建模块时“不支持内核包 linux-headers-5.0.0-2173611831”

我下载了 linux kernel-5.0.0 并尝试在我的 Ubuntu-18.04.3 上编译和安装它

我在 /usr/src/linux-5.0 中使用的命令:

但是在最后一个命令的结果中,有一个错误:

我按照它的建议 vim /var/lib/dkms/nvidia/430.50/build/make.log我得到了这个:

似乎需要的东西不见了。我错过了什么?

.

0 投票
1 回答
549 浏览

linux-kernel - 启用构建树外内核模块的文件

我需要apt为一些东西准备一个-package,以便为自定义 Linux 构建内核模块。我已经在不同的机器上交叉构建了内核头文件和模块使用headers_installmodules_install make-targets。复制生成的目录后,我仍然无法在目标机器上构建内核模块,因为/lib/modules/$(shell uname -r)/build它丢失了。

这是我的问题。为了启用模块构建(以及上面提到的生成的内核头文件和模块),我需要在包中包含哪些最小依赖项?

提前致谢。

0 投票
1 回答
1257 浏览

makefile - 使用 dkms 构建内核模块

我无法dkms在 Centos 7 上工作。我dkms.conf整天都在尝试改变事情,但没有任何进展。内核升级触发器dkms(同样不起作用)。我最小的非工作示例是dkms build. 有什么建议么?

dkms.conf:

在 dkms 中注册模块:

使用 dkms 构建模块不起作用:

咨询/var/lib/dkms/cs2/3.2.5/build/make.log没有太大帮助:

编辑: /var/lib/dkms/cs2/3.2.5/build/make.log看起来更像make install ....

make但是,手动调用就可以了:

我相信我拥有所有需要的软件包:

0 投票
1 回答
71 浏览

crash-dumps - 如何从我的 DKMS 模块获取崩溃回溯中的文件名和行号?

我正在使用 DKMS 在 Debian 发行版上构建 Linux 模块,并且我需要调试内核冻结。

我已经安装了crash带有内核调试符号的命令行工具。当发生冻结时,我有一个使用crash命令加载的崩溃文件,我可以从内核跟踪中看到每一行的文件名和行号,但是当它是关于我的模块时,我没有任何文件名,也不是行号。

这是一个例子:

看看第 8 行。

从 DKMS 文档中,我找到了STRIPE=[#]我传递的配置,no以便不删除调试符号(如文档所述),但我仍然没有任何文件名或行号。

谁能告诉我如何让它们显示?

0 投票
0 回答
794 浏览

ubuntu-20.04 - sudo dkms 添加命令问题

我正在尝试设置我的 WIFI 适配器设置。我已经运行命令

当我尝试这样做时

这向我显示了以下错误

Error! Could not find module source directory. Directory: /usr/src/.-rtlwifi_new does not exist.

我该如何解决这个问题?

0 投票
1 回答
1338 浏览

linux - 我怎样才能真正删除(arch)linux中的dkms模块?

我有一个不再需要的 dkms 模块,我想删除它。我做到了sudo dkms remove ...,它删除了它。但是当我更新到较新的内核时,我的包管理器尝试构建该模块但失败了,所以它再次添加了它。

如何防止这种情况发生并真正删除模块?

0 投票
1 回答
748 浏览

debian-buster - 如何在 debian 10 上安装 AMD radeon PRO WX 4100 的驱动程序?

我正在尝试在 debian 10 内核 4.19.0-13 上安装 amdgpu-pro,但出现以下错误:

尝试使用安装文件进行安装时出现相同的错误

我不确定如何解决 dpkg 错误

我不知道要在这篇文章中添加什么其他信息,以便堆栈溢出让我发布它,所以也许如果我继续写单词它会接受它

0 投票
5 回答
7758 浏览

ubuntu - 为什么virtualbox无法在Ubuntu20.04上安装

我正在尝试安装 virtualbox。我以前安装过它,它工作。今天我尝试添加另一个虚拟机,它开始抱怨 dkms 出现问题,所以我尝试清除并安装所有内容,但失败了。

我无法在不跳过某些输出的情况下提交我的问题

dkms 错误

$ cat /var/lib/dkms/virtualbox/6.1.10/build/make.log DKMS make.log for virtualbox-6.1.10 for kernel 5.8.0-36-generic (x86_64) 1 月 12 日星期二 12:40:32 GMT 2021 make:进入目录'/usr/src/linux-headers-5.8.0-36-generic' CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux .o
CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrv.o CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrvGip.o CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrvSem.o CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPDrvTracer.o CC [ M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/SUPLibAll.o CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/alloc-r0drv.o CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/initterm-r0drv.o
CC [M] /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/r0drv/memobj-r0drv.o
你的意思是“cpuhp_state”吗?760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~ ./include/linux/percpu-defs.h:318:9: 注意:在宏 '<strong>pcpu_size_call_return' 318 的定义中 | typeof(变量) pscr_ret;
| ^~~~~~~~ /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24:注意:在宏'this_cpu_read' 760的扩展中| RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~~ /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:38:注意:只报告每个未声明的标识符每个函数出现一次 760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~ ./include/linux/percpu-defs.h:318:9: 注意:在宏 '<strong>pcpu_size_call_return' 318 的定义中 | typeof(变量) pscr_ret;
| ^~~~~~~~ /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv-linux.c:760:24:注意:在宏'this_cpu_read' 760的扩展中| RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~~ make[2]: *** [scripts/Makefile.build:290: /var/lib/dkms/virtualbox/6.1.10/build/vboxdrv/linux/SUPDrv -linux.o] 错误 1 ​​make[2]: *** Waiting for unfinished jobs.... make[1]: *** [scripts/Makefile.build:519: /var/lib/dkms/virtualbox/6.1 .10/build/vboxdrv] 错误 2 make: *** [Makefile:1780: /var/lib/dkms/virtualbox/6.1.10/build] 错误 2 make: Leaving directory '/usr/src/linux-headers- 5.8.0-36-通用'

0 投票
2 回答
3794 浏览

kernel - Virtualbox 6.1.10,Ubuntu 20.04 错误返回状态构建在内核 5.8.0 上,包 virtualbox-dkms 错误

与其说是一个问题,不如说是一个文档。

这是关于失败apt-get installupdate与 virtualbox 6.1.10、Ubuntu 20.04 和 virtualbox-dkms 包无法构建有关的问题。

我最近在使用 Ubuntu 20.04 和 Virtual Box 6.1.10 时遇到了一个问题,类似于此处此处记录的内容。

问题是从 ubuntu 软件中心安装虚拟机安装了 v6.1.10,它与当前的 ubuntu 内核版本 v 5.8.xx 不兼容。

这些都是已知问题,但是当我错误地尝试从包商店重新安装 vbox 时出现了我的问题。以前,virtualbox-dkms 已被编译并重新安装会删除正常运行的软件包,并且会失败并显示错误 ( status 10)。所以我最终遇到了这样的错误:

可以在以下位置看到此错误:

- -或者 - -

为了解决这个问题,我按照此处的说明直接从他们的网站重新安装了 virtualbox v.6.1.16 。

然而,在随后的更新中,我仍然收到有关 virtualbox-dkms 的相同错误,即使该过程不再使用。因此,为了解决此问题,请关注站点。

我复制了导致失败的安装后脚本:

然后清除了旧 virtualbox 安装的剩余 dkms 文件并进行了更新:\

到目前为止没有任何问题!希望这对其他人有帮助!

TLDR:尝试重新安装以从 ubuntu 软件管理器修复 virtualbox v6.10。v6.10 与 ubuntu 20.04 内核 v5.8 存在问题。要修复损坏的包 virtualbox-dkms,删除安装后脚本并清除旧的 virtualbox v6.1.10 文件,然后直接从他们的网站安装 virtualbox 以获得 virtualbox ^v6.1.16。