해결된 질문
작성
·
330
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.
답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다.
조원익 님의 언리얼5.4에서 빌드 오류
문제는 언리얼 엔진 버전 업그레이드에 따른 호환성 문제로 보입니다. 특히, 질문에 언급된 오류 메시지 LogInit: Warning: Incompatible or missing module: ArenaBattle
는 언리얼 엔진 버전 업데이트 후 프로젝트 모듈이 더 이상 호환되지 않거나, 필요한 모듈을 찾을 수 없음을 나타냅니다. 이는 주로 프로젝트가 참조하는 모듈이나 플러그인이 새 버전의 엔진과 호환되지 않을 때 발생합니다.
이러한 문제를 해결하기 위해 적용해볼 수 있는 몇 가지 일반적인 방법은 다음과 같습니다:
모듈과 플러그인의 호환성 확인: 프로젝트에서 사용 중인 모듈과 플러그인이 최신 언리얼 엔진 버전과 호환되는지 확인하세요. 개발자 공식 문서나 플러그인 제공 페이지에서 최신 정보를 찾을 수 있습니다.
프로젝트 파일 재생성: 프로젝트 폴더 내에서 .uproject
파일을 마우스 오른쪽 버튼으로 클릭하고 Generate Visual Studio project files
옵션을 선택하여 프로젝트 파일을 재생성합니다. 이 과정에서 호환되지 않는 부분을 엔진이 자동으로 수정하려고 시도할 수 있습니다.
코드의 직접 수정: 때로는 엔진의 API가 변경되어 코드를 직접 업데이트해야 할 수도 있습니다. 오류 메시지에서 제공하는 정보를 바탕으로 관련 코드를 수정하세요.
언리얼 엔진 공식 문서 및 커뮤니티: 언리얼 엔진의 공식 문서(Unreal Engine Documentation) 또는 언리얼 엔진 커뮤니티 포럼(Unreal Engine Forums)에서 문제에 대한 해결책을 찾을 수 있는 경우가 많습니다. 특히, 새로운 엔진 버전에서 발생하는 일반적인 문제와 이에 대한 해결책이 공유됩니다.
현재 저희 데이터베이스에는 언리얼5.4 버전에 대한 구체적인 문제 해결 방법이 없습니다. 상기 방법들로 문제 해결이 어렵다면, 언리얼 엔진 공식 커뮤니티나 문의를 통해 추가적인 지원을 받는 것이 좋습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
해결되었습니다. 감사합니다