一尘不染

从多个源文件构建内核模块,其中一个与模块具有相同的名称

linux

是否可以从多个源文件中构建一个内核模块,这些源文件中的一个与模块具有相同的名称?

例如:我要使用以下源文件构建“ mymodule.ko”:
mymodule.c
mymodule_func.c

这个makefile不起作用:

#Makefile
obj-m += mymodule.o
mymodule-objs := mymodule.o mymodule_func.o

谢谢


阅读 340

收藏
2020-06-03

共1个答案

一尘不染

我找到了解决方案,将源文件放在一个子文件夹中:

生成文件
src / mymodule.c
src / mymodule_func.c

#Makefile
obj-m += mymodule.o
mymodule-objs := ./src/mymodule.o ./src/mymodule_func.o

all:
    make -C $(KERNEL_PATH) M=$(PWD) modules

clean:
    make -C $(KERNEL_PATH) M=$(PWD) clean
2020-06-03