내 makefile에 객체 변수가 있습니다. 나는 모든 .o 파일에 obj를 붙일 필요가있다. 어떻게하면 좋을까요?미리 경로를 만들 때
CC=g++
CFLAGS=-C -Wall
LDFLAGS=-lsqlite3 -lpthread -ldl
SOURCES=main.cpp Database.cpp actionInit.cpp TileSet.cpp Player.cpp
OBJECTS=$(SOURCES:.cpp=.o)
EXECUTABLE=mahjong-counter
all: bin $(OBJECTS) $(EXECUTABLE)
bin:
mkdir -p bin
%.o: %.cpp
$(CC) $(LDFLAGS) $< -c -o [email protected]
$(EXECUTABLE): $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) -o $(EXECUTABLE)
clean:
rm $(OBJECTS)
귀하의 메이크 파일에는 몇 가지 문제가 있습니다. '$ (CXX) '대신'$ (CC)'를 사용하는 것과는 별도로, 병렬 빌드가 안전하지 않은 별도의 타겟에 디렉토리를 생성하는 것을 피할 수 있습니다 (http://stackoverflow.com/questions/). 1894427/makefile-with-directory-tree-creation-for-parallel-j-build)을 사용하십시오. –