尽管我已经对错误进行了一些研究,并且了解到它与缩进有关。我仍然无法弄清楚我的Makefile出了什么问题,导致终端出错:Makefile:2: *** missing separator. Stop.
在运行make clean
命令时。
我的Makefile的内容如下:
obj-m := S3538332Device.o
KERNEL_DIR /usr/src/linux-headers-$(shell uname -r)
all:
$(MAKE) -C $(KERNEL_DIR) SUBDIRS=$(PWD) modules
clean:
rm -rf *.o *.ko *.mod.* *.symvers *.order *~
我尝试并运行cat -e -t -v {Makefile}
以确保选项卡在正确的位置:
obj-m := S3538332Device.o$
KERNEL_DIR /usr/src/linux-headers-$(shell uname -r)$
all:$
^I$(MAKE) -C $(KERNEL_DIR) SUBDIRS=$(PWD) modules$
clean:$
^Irm -rf *.o *.ko *.mod.* *.symvers *.order *~$
我一般对makefile和c编程都是陌生的,因此我找不到代码有什么问题。谁能帮助我找出导致错误的问题是什么?
答案 0 :(得分:0)
您缺少赋值运算符,应该是
KERNEL_DIR = /usr/src/linux-headers-$(shell uname -r)
或者通常仅在尚未设置KERNEL_DIR时设置:
KERNEL_DIR ?= /usr/src/linux-headers-$(shell uname -r)