为32位cpu编译Linux内核模块

标签 c linux kernel 32bit-64bit 32-bit

我正在学习如何制作 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/

相关文章:

c - 河豚浮点

c - 将位图写入字符串而不是 FILE* 或将图像写入 PNG

linux - 如何在 Linux 中拦截文件更新?

c - 如何使用C语言程序通过计算机的usb端口打开/关闭电灯泡

c - mvaddch() 不打印到控制台

c - 在 char 指针中获取字符串输入

linux - 升级后的 Redhat Linux 内核在启动时出现内核 panic

linux - 我如何查看 linux 内核 SNMP 计数器?

c - 错误 "' strcpy' 使指针来自整数而不进行强制转换”

linux - 有没有办法从 Eclipse 执行 linux 命令