我不知道在cpp项目中使用多个rc文件是否是错误的做法... 当我在以下makefile上运行make时,windres只需要一个文件作为输入。
CC=g++
CRES=windres
CFLAGS= -c -Wall
LDFLAGS=-static-libgcc -static-libstdc++ -Wl,-subsystem,windows
SOURCES=main.cpp aboutDlg.cpp
OBJECTS=$(SOURCES:.cpp=.o)
RESOURCE=main.rc aboutDlg.rc
RESOBJECT=$(RESOURCE:.rc=_res.o)
EXEC=neunteufelApp.exe
all: $(SOURCES) $(EXEC) $(RESOURCE)
$(OBJECTS): $(SOURCES)
$(CC) $(SOURCES) $(CFLAGS) $< -c
$(RESOBJECT): $(RESOURCE)
$(CRES) $(RESOURCE) $(RESOBJECT)
$(EXEC): $(OBJECTS) $(RESOBJECT)
$(CC) $(OBJECTS) $(LDFLAGS) $(RESOBJECT) -o $@
当我改变
$(RESOBJECT): $(RESOURCE)
$(CRES) $(RESOURCE) $(RESOBJECT)
到
$(RESOBJECT): $(RESOURCE)
$(CRES) main.rc main_res.o
$(CRES) aboutDlg.rc aboutDlg_res.o
它工作正常,但是我必须在两个地方更改makefile ... 有没有更好的解决方案,还是不好的做法?
谢谢