inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해

언리얼5.4에서 빌드오류가 발생합니다.

해결된 질문

885

조원익

작성한 질문수 1

0

이번에 깃허브에 올려주신 언리얼엔진5.4버전으로 빌드 후 실행할려고 하는데 계속 오류가 발생합니다.

 

LogInit: Warning: Incompatible or missing module: ArenaBattle

Running C:/UE5/UE_5.4/Engine/Build/BatchFiles/Build.bat Development Win64 -Project="H:/Unreal Project/MyGame/UnrealProgrammingPart2-15/ArenaBattle.uproject" -TargetType=Editor -Progress -NoEngineChanges -NoHotReloadFromIDE

Using bundled DotNet SDK version: 6.0.302

Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" Development Win64 -Project="H:/Unreal Project/MyGame/UnrealProgrammingPart2-15/ArenaBattle.uproject" -TargetType=Editor -Progress -NoEngineChanges -NoHotReloadFromIDE

Log file: C:\Users\cwi02\AppData\Local\UnrealBuildTool\Log.txt

Creating makefile for ArenaBattleEditor (no existing makefile)

@progress push 5%

Parsing headers for ArenaBattleEditor

Running Internal UnrealHeaderTool "H:\Unreal Project\MyGame\UnrealProgrammingPart2-15\ArenaBattle.uproject" "H:\Unreal Project\MyGame\UnrealProgrammingPart2-15\Intermediate\Build\Win64\ArenaBattleEditor\Development\ArenaBattleEditor.uhtmanifest" -WarningsAsErrors -installed

Total of 76 written

Reflection code generated for ArenaBattleEditor in 2.0740478 seconds

@progress pop

Building ArenaBattleEditor...

Using Visual Studio 2022 14.38.33140 toolchain (C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130) and Windows 10.0.22621.0 SDK (C:\Program Files (x86)\Windows Kits\10).

[Adaptive Build] Excluded from ArenaBattle unity file: ArenaBattle.cpp, ABAIController.cpp, BTDecorator_AttackInRange.cpp, BTService_Detect.cpp, BTTask_Attack.cpp, BTTask_FindPatrolPos.cpp, BTTask_TurnToTarget.cpp, ABAnimInstance.cpp, AnimNotify_AttackHitCheck.cpp, ABCharacterBase.cpp, ABCharacterControlData.cpp, ABCharacterNonPlayer.cpp, ABCharacterPlayer.cpp, ABComboActionData.cpp, ABCharacterStatComponent.cpp, ABGameMode.cpp, ABGameSingleton.cpp, ABStageGimmick.cpp, ABAnimationAttackInterface.cpp, ABCharacterAIInterface.cpp, ABCharacterHUDInterface.cpp, ABCharacterItemInterface.cpp, ABCharacterWidgetInterface.cpp, ABGameInterface.cpp, ABItemBox.cpp, ABItemData.cpp, ABPotionItemData.cpp, ABScrollItemData.cpp, ABWeaponItemData.cpp, ABPlayerController.cpp, ABSaveGame.cpp, ABFountain.cpp, ABCharacterStatWidget.cpp, ABHpBarWidget.cpp, ABHUDWidget.cpp, ABUserWidget.cpp, ABWidgetComponent.cpp

Determining max actions to execute in parallel (6 physical cores, 6 logical cores)

Executing up to 6 processes, one per physical core

Using Parallel executor to run 43 action(s)

------ Building 43 action(s) started ------

[1/43] Resource Default.rc2

[2/43] Compile [x64] SharedPCH.UnrealEd.Project.ValApi.Cpp20.cpp

[3/43] Compile [x64] ABCharacterAIInterface.cpp

[4/43] Compile [x64] ABAnimationAttackInterface.cpp

[5/43] Compile [x64] ABCharacterControlData.cpp

[6/43] Compile [x64] ABCharacterHUDInterface.cpp

[7/43] Compile [x64] ABAnimInstance.cpp

[8/43] Compile [x64] ABCharacterItemInterface.cpp

[9/43] Compile [x64] ABAIController.cpp

[10/43] Compile [x64] ABCharacterStatComponent.cpp

[11/43] Compile [x64] ABCharacterWidgetInterface.cpp

[12/43] Compile [x64] ABCharacterBase.cpp

[13/43] Compile [x64] ABCharacterNonPlayer.cpp

[14/43] Compile [x64] ABComboActionData.cpp

[15/43] Compile [x64] ABCharacterStatWidget.cpp

[16/43] Compile [x64] ABFountain.cpp

[17/43] Compile [x64] ABGameInterface.cpp

[18/43] Compile [x64] ABCharacterPlayer.cpp

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(88): error C2027: 정의되지 않은 형식 'AGameModeBase'을(를) 사용했습니다.

C:\UE5\UE_5.4\Engine\Source\Runtime\Engine\Classes\Engine\GameInstance.h(29): note: 'AGameModeBase' 선언을 참조하십시오.

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(88): note: 템플릿 인스턴스화 컨텍스트(가장 오래된 인스턴스화 컨텍스트)가

H:\Unreal Project\MyGame\UnrealProgrammingPart2-15\Source\ArenaBattle\Character\ABCharacterPlayer.cpp(89): note: 컴파일되는 함수 템플릿 인스턴스화 'To Cast<IABGameInterface,AGameModeBase>(From )'에 대한 참조를 확인하세요.

with

[

To=IABGameInterface,

From=AGameModeBase

]

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(88): error C2338: static_assert failed: 'Attempting to cast between incomplete types'

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\INCLUDE\type_traits(1298): error C2139: 'AGameModeBase': 정의되지 않은 클래스는 컴파일러 내장 형식 특성 '__is_base_of'에 대한 인수로 사용할 수 없습니다.

C:\UE5\UE_5.4\Engine\Source\Runtime\Engine\Classes\Engine\GameInstance.h(29): note: 'AGameModeBase' 선언을 참조하십시오.

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\INCLUDE\type_traits(1298): note: 템플릿 인스턴스화 컨텍스트(가장 오래된 인스턴스화 컨텍스트)가

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(135): note: 컴파일되는 변수 템플릿 'const bool is_base_of_v<UObject,AGameModeBase>'에 대한 참조를 확인하세요.

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(135): error C2338: static_assert failed: 'Attempting to use Cast<> on a type that is not a UObject or an Interface'

[19/43] Compile [x64] ABGameMode.cpp

[20/43] Compile [x64] ABGameSingleton.cpp

[21/43] Compile [x64] ABItemData.cpp

[22/43] Compile [x64] ABPotionItemData.cpp

[23/43] Compile [x64] ABHUDWidget.cpp

[24/43] Compile [x64] ABSaveGame.cpp

[25/43] Compile [x64] ABHpBarWidget.cpp

[26/43] Compile [x64] ABItemBox.cpp

[27/43] Compile [x64] ABScrollItemData.cpp

[28/43] Compile [x64] ABPlayerController.cpp

[29/43] Compile [x64] ABWeaponItemData.cpp

[30/43] Compile [x64] ABStageGimmick.cpp

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(88): error C2027: 정의되지 않은 형식 'AGameModeBase'을(를) 사용했습니다.

C:\UE5\UE_5.4\Engine\Source\Runtime\Engine\Classes\Engine\GameInstance.h(29): note: 'AGameModeBase' 선언을 참조하십시오.

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(88): note: 템플릿 인스턴스화 컨텍스트(가장 오래된 인스턴스화 컨텍스트)가

H:\Unreal Project\MyGame\UnrealProgrammingPart2-15\Source\ArenaBattle\Gimmick\ABStageGimmick.cpp(198): note: 컴파일되는 함수 템플릿 인스턴스화 'To Cast<IABGameInterface,AGameModeBase>(From )'에 대한 참조를 확인하세요.

with

[

To=IABGameInterface,

From=AGameModeBase

]

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(88): error C2338: static_assert failed: 'Attempting to cast between incomplete types'

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\INCLUDE\type_traits(1298): error C2139: 'AGameModeBase': 정의되지 않은 클래스는 컴파일러 내장 형식 특성 '__is_base_of'에 대한 인수로 사용할 수 없습니다.

C:\UE5\UE_5.4\Engine\Source\Runtime\Engine\Classes\Engine\GameInstance.h(29): note: 'AGameModeBase' 선언을 참조하십시오.

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\INCLUDE\type_traits(1298): note: 템플릿 인스턴스화 컨텍스트(가장 오래된 인스턴스화 컨텍스트)가

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(135): note: 컴파일되는 변수 템플릿 'const bool is_base_of_v<UObject,AGameModeBase>'에 대한 참조를 확인하세요.

C:\UE5\UE_5.4\Engine\Source\Runtime\CoreUObject\Public\Templates\Casts.h(135): error C2338: static_assert failed: 'Attempting to use Cast<> on a type that is not a UObject or an Interface'

[31/43] Compile [x64] ArenaBattle.cpp

[32/43] Compile [x64] AnimNotify_AttackHitCheck.cpp

[33/43] Compile [x64] ABUserWidget.cpp

[34/43] Compile [x64] ABWidgetComponent.cpp

[35/43] Compile [x64] BTTask_Attack.cpp

[36/43] Compile [x64] BTDecorator_AttackInRange.cpp

[37/43] Compile [x64] BTService_Detect.cpp

[38/43] Compile [x64] BTTask_TurnToTarget.cpp

[39/43] Compile [x64] BTTask_FindPatrolPos.cpp

[40/43] Compile [x64] Module.ArenaBattle.cpp

Total time in Parallel executor: 62.75 seconds

Total execution time: 70.98 seconds

LogInit: Warning: Still incompatible or missing module: ArenaBattle

LogCore: Engine exit requested (reason: EngineExit() was called)

LogExit: Preparing to exit.

LogXGEController: Cannot use XGE Controller as Incredibuild is not installed on this machine.

LogXGEController: Cleaning working directory: C:/Users/cwi02/AppData/Local/Temp/UnrealXGEWorkingDir/

LogPakFile: Destroying PakPlatformFile

LogExit: Exiting.

 

unreal-engine ue-blueprint 언리얼-c++

답변 2

0

이득우

헛 확인했을 때 이상 없었는데, 현재 두 소스코드에서 GameModeBase클래스를 못 찾네요.
수정했으니 다시 받아보시겠어요?
제보 감사합니다.

0

조원익

해결되었습니다. 감사합니다

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

조원익 님의 언리얼5.4에서 빌드 오류 문제는 언리얼 엔진 버전 업그레이드에 따른 호환성 문제로 보입니다. 특히, 질문에 언급된 오류 메시지 LogInit: Warning: Incompatible or missing module: ArenaBattle는 언리얼 엔진 버전 업데이트 후 프로젝트 모듈이 더 이상 호환되지 않거나, 필요한 모듈을 찾을 수 없음을 나타냅니다. 이는 주로 프로젝트가 참조하는 모듈이나 플러그인이 새 버전의 엔진과 호환되지 않을 때 발생합니다.

이러한 문제를 해결하기 위해 적용해볼 수 있는 몇 가지 일반적인 방법은 다음과 같습니다:

  1. 모듈과 플러그인의 호환성 확인: 프로젝트에서 사용 중인 모듈과 플러그인이 최신 언리얼 엔진 버전과 호환되는지 확인하세요. 개발자 공식 문서나 플러그인 제공 페이지에서 최신 정보를 찾을 수 있습니다.

  2. 프로젝트 파일 재생성: 프로젝트 폴더 내에서 .uproject 파일을 마우스 오른쪽 버튼으로 클릭하고 Generate Visual Studio project files 옵션을 선택하여 프로젝트 파일을 재생성합니다. 이 과정에서 호환되지 않는 부분을 엔진이 자동으로 수정하려고 시도할 수 있습니다.

  3. 코드의 직접 수정: 때로는 엔진의 API가 변경되어 코드를 직접 업데이트해야 할 수도 있습니다. 오류 메시지에서 제공하는 정보를 바탕으로 관련 코드를 수정하세요.

  4. 언리얼 엔진 공식 문서 및 커뮤니티: 언리얼 엔진의 공식 문서(Unreal Engine Documentation) 또는 언리얼 엔진 커뮤니티 포럼(Unreal Engine Forums)에서 문제에 대한 해결책을 찾을 수 있는 경우가 많습니다. 특히, 새로운 엔진 버전에서 발생하는 일반적인 문제와 이에 대한 해결책이 공유됩니다.

현재 저희 데이터베이스에는 언리얼5.4 버전에 대한 구체적인 문제 해결 방법이 없습니다. 상기 방법들로 문제 해결이 어렵다면, 언리얼 엔진 공식 커뮤니티나 문의를 통해 추가적인 지원을 받는 것이 좋습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

무한맵 제작과정중에 GetWorld 가 Nullptr 을 반환합니다.

0

46

2

12강 행동트리에서 질문이 있습니다.

0

52

1

위젯 사이즈랑 위치 질문드려요.

0

82

3

행동트리의 데코레이션 관련하여 질문이 있습니다.

0

94

3

VS 2026 의 문제일까요?

0

488

2

에셋참조 블루프린트질문

0

67

2

애님 몽타주 콤보 관련질문

0

70

2

ThirdPerson CDO 에러가 생깁니다.

0

95

3

캐릭터가 움직이지 않습니다.

0

182

4

쿠킹 폴더 지정시 , Item 이외에는 지정하지 않는지 궁금합니다.

0

62

2

TSoftObjectPtr 를 사용했음에도, 메모리에 로드 됩니다.

0

95

2

7강에 나오는 생성자에 대해서 궁금합니다.

0

78

2

6강을 마무리하며 트레이스 채널 을 이해하지 못했습니다.

0

73

2

3강을 마무리 하며, 카메라가 움직이지 않습니다.

0

71

2

Use Controller Rotation 옵션값이 궁금합니다.

0

84

2

3강 입력 시스템 적용 중, 5.6 버전은 입력 매팅이 2개 입니다.

0

65

2

PlayerController 에 대헤 제가 잘못 이해한 것 같습니다.

0

78

2

13강 UpdateStat 부분에서 문제를 겪고 있습니다.

0

64

2

BP_PlayerController의 CustomEvent노드 이유가 궁금합니다.

0

66

1

콤포넌트 포인터 선언시 TObjectPtr<>과 UStaticMeshComponent* 차이점

0

73

2

CharacterMovementComponent의 RotationRate관련해서 질문이 있습니다.

0

115

2

언리얼 공부방법에 대해 질문드립니다.

0

87

2

4강 에서 이상한 그림자가 남습니다.

0

47

1

2강에서 카메라 회전안되시는분 참고

2

91

2