我希望我的Makefile尽可能简单并且仍然可以运行。这就是它的样子。
load: load.cpp
g++ load.cpp -g -o load
list: list.cpp
g++ list.cpp -g -o list
当只有一个条目时它工作正常。但是当我添加第二个条目时,它不会检查它是否已更新并需要重新编译,除非我特意提供名称。我该如何解决这个问题?
答案 0 :(得分:5)
Make仅自动生成第一个目标。因此,添加一个新的第一个目标,取决于其他目标。
all: load list
load: load.cpp
g++ load.cpp -g -o load
list: list.cpp
g++ list.cpp -g -o list
答案 1 :(得分:2)
Dave Hinton已经展示了如何使Makefile工作。以下是如何使其更简单:
all: load list
%: %.cpp
g++ $< -g -o $@