我使用以下内容定义了一个makefile:
mainmake: main.c
gcc -o main main.c
clean:
rm -f main
运行时
make mainmake
它按预期编译main.c,没有任何问题。
当我尝试运行时
make clean
我得到的只是一个
make: *** No rule to make target `clean`. Stop.
可能是什么问题?
答案 0 :(得分:1)
在“清洁”目标的定义之前添加以下内容:
.PHONY: clean
答案 1 :(得分:0)
当选项卡正确时,使用GNU make 3.81时,Makefile对我来说很好。虽然@gregj正确地建议干净应该是虚假的,但是当没有名为“干净”的文件存在时,目标的虚假不应影响其重建。
我认为你错了一些标签。检查选项卡(不是8个空格!)是否位于gcc和rm行的前面,并在末尾添加一个空行,以防编辑器损坏并且不在文件末尾插入换行符。