我通常使用这一行
我不希望采用以下两行解决方案:
OBJECTS = $(SOURCES:.cpp=.o)
将 SOURCES 中的 .cpp 文件扩展名替换为 .o 扩展名。现在我的项目中除了 .cpp 文件之外还有 .c 文件。如何修改这一行,使其将所有 .c 和 .cpp 文件扩展名都替换成 .o?我不希望采用以下两行解决方案:
OBJECTS_TMP = $(SOURCES:.cpp=.o)
OBJECTS = $(OBJECT_TMP:.c=.o)
我想要像这样的东西:
OBJECTS = $(SOURCES:(.cpp|.c)=.o)
甚至可以是这样的:
OBJECTS = $(SOURCES:.*=.o)
这是否可行?谢谢!
$(SOURCES:.c=.o:.cpp=.o)
? - Niklas R$(SOURCES:.c=.o:.cpp=.o)
给我返回了*** multiple target patterns. Stop.
而$(SOURCES:.cpp=.o:.c=.o)
则是返回了*** target pattern contains no '%'. Stop.
- Thanh Pham