我正在尝试学习内核编程,但在尝试编译一个简单的hello world程序时,我收到以下错误。
make -C /lib/modules/3.2.0-67-generic/build M = / home / arun / KPrograms modules make [1]:输入目录
/home/arun/KPrograms' make[1]: *** No rule to make target
- C'。停止。 make [1]:离开目录`/ home / arun / KPrograms' make: * [all]错误2
我的 Makefile 是
obj−m += hello−1.o
all:
make −C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make −C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
答案 0 :(得分:7)
您应该将Makefile中的所有−C
替换为-C
。短划线字符不正确。
答案 1 :(得分:1)
大家好,
您必须自己输入代码。在某些情况下,复制粘贴不起作用。你必须这样输入:
obj-m............<enter>
all:....<enter>
<tab>make -C.............<enter>
clean:..............<enter>
<tab>make -C...........<esc> <:wq>
这可能会解决您的问题。 祝你好运