4

我正在尝试使用 DKMS 构建模块。我的问题是我似乎无法让 DKMS 通过正确的 ARCH 来“制作”。它继续使用我的操作系统内核的架构,即 armv7l。但是没有映射
/usr/src/linux/arch/armv7l
需要往里面看
/usr/src/linux/arch/arm

我尝试将 -a arm, -k 4.4.21-v7+/arm 作为参数传递给“dkms build”,但它没有将其传递给“make”。将 BUILD_EXCLUSIVE_ARCH="arm" 添加到 /usr/src/rtl8812AU-4.3.14/dkms.conf 也没有什么区别。

sudo dkms build -m ${DRV_NAME} -v ${DRV_VERSION} -k 4.4.21-v7+/arm

此内核不需要内核准备。跳过...

构建模块:
清理构建区域....
'make'....(错误退出状态:2)
错误!内核上模块构建的错误返回状态:4.4.21-v7+ (arm)
有关更多信息,请参阅 /var/lib/dkms/rtl8812AU/4.3.14/build/make.log。

猫/var/lib/dkms/rtl8812AU/4.3.14/build/make.log

DKMS make.log for rtl8812AU-4.3.14 for kernel 4.4.21-v7+ (arm)
Thu Sep 29 16:36:07 UTC 2016
make ARCH=armv7l CROSS_COMPILE= -C /lib/modules/4.4.21-v7+/build M=/var/lib/dkms/rtl8812AU/4.3.14/build modules
make[1]: Entering directory '/usr/src/linux'
Makefile:606: arch/armv7l/Makefile: No such file or directory
make[1 ]: 没有规则来制作目标'arch/armv7l/Makefile'。停止。
make[1]: 离开目录 '/usr/src/linux'
Makefile:1576: recipe for target 'modules' failed
make: [modules] Error 2

如何解决这个问题?
谢谢你

4

2 回答 2

5

我通过符号链接arm目录在带有Ubuntu Mate(16.04)的Raspberry Pi 2上解决了这个问题:

sudo ln -s arm armv7l

肮脏的黑客,但它的工作原理:)

于 2017-04-18T12:46:58.743 回答
0

-a, --arch你可以像这样通过拱门:

dkms install rtl8188fu/1.0 -j 4-a arm

通过运行阅读手册页上的更多信息man dkms或在此处找到它:

http://manpages.ubuntu.com/manpages/bionic/man8/dkms.8.html

于 2021-03-21T07:24:05.493 回答