我正在学习如何制作 Linux 内核模块,我想为 32 位 CPU 编译它。我怎样才能做到这一点?
我当前编译内核的命令(默认为64位)是:
obj-m += test.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
在 gcc 中,我会使用 -m32
标志,但在这种情况下,我不知道内核编译是如何工作的,所以我不知道要更改什么。
最佳答案
您需要交叉编译该模块。请看一下这个页面http://kernelnewbies.org/FAQ/KernelCrossCompilation .
关于为32位cpu编译Linux内核模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29980074/