Answers:
正如在线手册中指出的那样,导致该错误的最常见原因是,当make
期望使用制表符时,行会缩进空格。
target:
\tcmd
\t
TAB 在哪里(U + 0009)
target:
....cmd
其中每个.
代表一个空格(U + 0020)。
仅出于笑容,以防万一有人遇到类似错误:
我收到了臭名昭著的“缺少分隔符”错误,因为我调用了将函数定义为
($eval $(call function,args))
而不是
$(eval $(call function,args))
即($
不是$(
。
0x20
那里没有“空格”,对吗?
$
我在qmake生成的Makefile中缺少分隔符文件。我正在将Qt代码移植到其他平台。我没有设置QMAKESPEC或MAKE。这是我找到答案的链接:
https://forum.qt.io/topic/3783/missing-separator-error-in-makefile/5
因此很明显,需要所有我是“建立必要的”包,然后跑autoconf
第一,这令Makefile.pre.in
,那么./configure
那么make
它完美的作品...
以下Makefile代码有效:
obj-m = hello.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