我正在尝试为内核模块编写一个 makefile,但无法让它工作。运行以下有这个输出
$ make
make: Nothing to be done for 'all'.
但是直接在终端上运行 make 命令会导致
$ make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
make: Entering directory '/usr/src/linux-headers-3.5.0-17-generic'
CC [M] <blah>
Building modules, stage 2
<blah>
make: Leaving directory...
我的 Makefile 的内容是(源文件是 main.c)
obj-m += main.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(shell pwd) modules
在尝试使用 makefile 之前,我确实删除了 *.o 和 *.ko。更改all
为default
也无济于事。