습관처럼 컴파일 버튼 누르다가 생긴 웃지 못할 해프닝
이득우님의 책을 보면서 공부하고 있던 도중 갑자기 아래와 같은 애러가 발생하였다!!
[참고사진]
출처 : https://community.gamedev.tv/t/could-not-be-compiled-try-rebuilding-from-source-manually/7953
어떻게 해결해야하나 이곳저곳 기웃거렸는데도 해결이 안되길래 에러 메시지 그대로 Try rebuilding from sorce manually를 시도해보았다.
비주얼 스튜디오에서
build > build solution
그 결과 아래와 같은 에러메시지를 얻었다.
...
error LNK2001: unresolved external symbol "public: virtual void __cdecl IGameplayTaskOwnerInterface::...
...
fatal error LNK1120: 1 unresolved externals
...
에러 메시지를 참고하여 검색한 결과 같은 메시지 때문에 질문을 올린 사람의 글을 찾을 수 있었다.
https://community.gamedev.tv/t/compiler-error/112384
답변을 참고하여 .build.cs 파일에 GameplayTasks를 Dependency Module에 추가하였더니 문제가 해결되었다.
PublicDependencyModuleNames.AddRange(new string[] { ..., "GameplayTasks", ...});
알고보니 책 바로 다음 페이지에 원인과 해결법이 나와있었다.
비헤이비어 트리 에디터에서 태스크를 추가하고 컴파일하려면 GameplayTasks 모듈을 Dependency 모듈에 추가해야 하는데, 이 설명을 미처 보지 못하고 컴파일해버리는 바람에 에러가 생겼던 것이다.
흑흑...😂 앞으로는 제멋대로 컴파일하지 말아야겠다.
그래도 괜찮은 게임개발 커뮤니티를 알게되어서 다행이다. 앞으로 많이 참고해봐야지 https://www.gamedev.tv/