在我的makefile中,我在运行' make tests'时遇到以下错误:
make: * 没有规则可以进行目标GenRangeTreeTester', needed by
测试'停止。
tests: GenRangeTreeTester libGenRangeTree.a
gcc -Wall -L. -lGenRangeTree Teacher.o Manager.o -o GenRangeTreeTester
./GenRangeTreeTester
.PHONY: tests
但实际上GenRangeTreeTester和libGenRangeTree.a并不存在,所以为什么它没有运行gcc调用?
感谢。
答案 0 :(得分:0)
你告诉它测试依赖于GenRangeTreeTeset和libGenRangeTree而且make告诉你它找不到GenRangeTreeTester的构建规则并且它不存在。
它没有运行gcc,如果没有依赖项是最新的(并且实际存在:),make将不会继续。)
希望能为你清除它。
答案 1 :(得分:0)
行tests: GenRangeTreeTester libGenRangeTree.a
表示目标tests
取决于 GenRangeTreeTester
。对于要执行的以下命令,文件必须带有该名称。
像这样更改你的Makefile:
tests: GenRangeTreeTester
./GenRangeTreeTester
GenRangeTreeTester: libGenRangeTree.a
gcc -Wall -L. -lGenRangeTree Teacher.o Manager.o -o GenRangeTreeTester