저는 main.cpp와 game.adt라는 두 개의 파일이 연결된 간단한 프로그램용 메이크파일을 작성하고 있습니다. csplit을 사용하여 game.adt를 헤더와 소스 코드(guess.h 및 추측.cpp)의 두 부분으로 분할해야 합니다. 나는 다음과 같이 makefile을 컴파일하려고 합니다.
HEADERS=guess.h
#Targets:
default: guessGame
guessGame: guess.o main.o
g++ guess.o main.o -o guessGame
guess.o: guess.cpp $(HEADERS)
g++ -c guess.cpp -o guess.o
main.o: main.cpp $(HEADERS)
g++ -c main.cpp -o main.o
clean:
-rm -f guessGame *.o
그러나 "guess.o에는 대상 추측에 대한 규칙이 필요하지 않습니다"라고 나와 있습니다. 헤더 파일도 마찬가지입니다. "guess.cpp" 및 "guess.h" 파일이 존재하지 않기 때문이라는 것을 알고 있지만 .adt 파일을 분할하여 추측.cpp 및 추측.h로 만들어야 하기 때문입니다. 추측.cpp 및 추측.h 대상에 대해 adt 파일을 사용하여 규칙을 만드는 방법은 무엇입니까?
답변1
이는 개선될 수 있습니다. 하지만 시작하려면 다음 단계를 따르세요.
guess.cpp guess.h : game.adt
csplit -sz $< '/Split Here/'
mv xx00 guess.h
mv xx01 guess.cpp
규칙 들여쓰기가 공백이 아닌 탭인지 확인하세요.