0
我创建了一个Makefile,但是当我使用它时,出于某种原因,似乎在最后添加了rm
命令。为什么GNU在最后添加这个'rm'命令?
这里的Makefile中,剥离的只是FILENAMES
和TESTS
全部内容:https://gist.github.com/riking/9a1dff3f1c1b36e6dbfce53e52a325ff
编辑:下面是最终无所谓的规则。
TESTS += char_is
TESTTARGETS = $(addprefix test-, $(TESTS))
TESTBINS = $(addprefix build/, $(TESTTARGETS))
build/%.o: %.c libft.h | build
$(CC) $(CFLAGS) -c $< -o [email protected]
test: $(TESTBINS)
for bin in $(TESTBINS); do \
echo $$bin ; \
$$bin ; \
echo ; \
done
build/test-%: build/test_%.o libft.a | build
$(CC) $(LDFLAGS) -o [email protected] $^
当我运行make re test
,输出只能到此为止:
为什么它到底在删除目标文件
.....
build/test-memmove
rm build/test_ft_memcpy.o ... build/test_char_is.o
(为$(TESTS)
每个元素一个目标文件)?
/me在更多的这种现象的措辞上训练搜索算法 – Riking