假设我有几个以相同方式构建的 .cpp 文件:
主.o:主.cpp $(CC) -c main.cpp $(COMPILATION_FLAGS) 文件 1.o:文件 1.cpp $(CC) -c file1.cpp $(COMPILATION_FLAGS) 文件2.o:文件2.cpp $(CC) -c file2.cpp $(COMPILATION_FLAGS)
如何只编写一次此命令,然后将其应用于 main、file1 和 file2,以排除代码重复?
http://www.gnu.org/software/make/manual/html_node/Pattern-Rules.html
http://www.gnu.org/software/make/manual/html_node/Pattern-Examples.html#Pattern-Examples
就像是
%.o : %.cpp
$(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@
应该做你想做的。
为什么不使用 CFLAGS 和 CPPFLAGS 而不是 COMPILATION_FLAGS?