如何在 Linux 中创建 .ko 文件

Ren*_*h G 9 linux drivers kernel gcc

我在 Linux 中为一台设备编写了一个驱动程序。如何创建(使用gcc.ko文件以便将其插入内核?

eph*_*ent 10

创建一个Makefile这样的。

ifneq ($(KERNELRELEASE),)
obj-m   := mymodule.o
else
KDIR    := /lib/modules/$(shell uname -r)/build
PWD     := $(shell pwd)
all:
        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
install:
        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules_install
%:
        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) $@
endif
Run Code Online (Sandbox Code Playgroud)

假设您的模块源在 中mymodule.c,运行make将创建mymodule.ko.

  • @Renjith G:`.ko` 的确切制作方式可能因内核版本而异,确保您使用内核的唯一方法是使用内核的 Makefile。 (2认同)