UE5(UE5.2.1 UE5.1.1)の環境構築ができません

この方の記事や公式サイトなどを参考にUE5(5.2.1)をインストールしようと試みました。インストール自体は成功したのですが、プロジェクトをVisualStudio2022で開くと、エラーが発生してしまいます。エラーは十数個出現していますが、その全てがプロジェクト作成時にすでに存在するファイルで発生しています。この他にもエラーが発生していますが、型エラーやオーバーライドのエラーなど問題と関係ない(と考えられる)ようなエラーです。また、プロジェクトを作成してそれをVisualStudioで開いただけ(一切の手を加えていない状態)でもエラーが出現します。

重大度レベル	コード	説明	プロジェクト	ファイル	行	抑制状態
エラー (アクティブ)	E0035	#error ディレクティブ: Unsupported architecture, please declare which address bit distinguish user space from kernel space	UE5	C:\Program Files\Epic Games\UE_5.2\Engine\Source\Runtime\CoreUObject\Public\AssetRegistry\AssetDataTagMap.h	184	

重大度レベル	コード	説明	プロジェクト	ファイル	行	抑制状態
エラー (アクティブ)	E1835	属性 "deprecated" はここでは適用されません	UE5	C:\Program Files\Epic Games\UE_5.2\Engine\Source\Runtime\CoreUObject\Public\Serialization\BulkData.h	1201	
エラー (アクティブ)	E0415	"UPTRINT" から "UE::CoreUObject::Private::FPackedObjectRef" に変換するための適切なコンストラクターが存在しません	UE5	C:\Program Files\Epic Games\UE_5.2\Engine\Source\Runtime\CoreUObject\Public\UObject\PackedObjectRef.h	32	

重大度レベル	コード	説明	プロジェクト	ファイル	行	抑制状態
エラー (アクティブ)	E0135	名前空間 "FixedTagPrivate" にメンバー "KernelAddressBit" がありません	UE5	C:\Program Files\Epic Games\UE_5.2\Engine\Source\Runtime\CoreUObject\Public\AssetRegistry\AssetDataTagMap.h	201	

試してみたこと

問題の切り分け

自身の結論

私では原因の特定ができませんでした。

自身の考察 やったことなど
エディターとUE5のどちらに原因があるのか探るために、以下の動作を行い挙動を確認しました。
・VisualStudioではなく、VSCodeを使用してみる
=>初期プロジェクトではエラーがでない。
・UE5でコンパイルが成功するか
=>初期状態ならコンパイルは成功する

ここからVisualStudioの問題であると予想したため、VisualStudioのアンインストール、及び再インストール、PCの再起動を行いました。また、足りないコンポーネントがないように、上のサイトに加えて以下の情報も参考にコンポーネントをインストールしました。

https://papersloth.hatenablog.com/entry/2023/04/18/194340

しかし、同じエラーが発生しています。仕方がないのでVisualStudioではなく、VSCodeを使用して学習を進めようと考え、一番上のサイトのComponentの部分まで進めました。しかし、ここでもエラーが発生してしまい、解決できませんでした。以下がUE5上でのコンパイル時に発生します。VSCode上では、型エラーと識別子エラーが発生していますが、コードはサイトのコードをコピーしただけなので、文法のミスはないはずです。

---------- Creating patch ----------
Running C:\Program Files\Epic Games\UE_5.2\Engine\Build\BatchFiles\Build.bat -Target="TestEditor Win64 Development -Project=""C:/Users/imamu/GameCreate/Practice/UnrealEngine5/Practice/Test/Test.uproject""" -LiveCoding -LiveCodingModules="C:/Program Files/Epic Games/UE_5.2/Engine/Intermediate/LiveCodingModules.txt" -LiveCodingManifest="C:/Program Files/Epic Games/UE_5.2/Engine/Intermediate/LiveCoding.json" -WaitMutex -LiveCodingLimit=100
Quick restart disabled when re-instancing is enabled.
  Using bundled DotNet SDK version: 6.0.302
  Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" -Target="TestEditor Win64 Development -Project=""C:/Users/imamu/GameCreate/Practice/UnrealEngine5/Practice/Test/Test.uproject""" -LiveCoding -LiveCodingModules="C:/Program Files/Epic Games/UE_5.2/Engine/Intermediate/LiveCodingModules.txt" -LiveCodingManifest="C:/Program Files/Epic Games/UE_5.2/Engine/Intermediate/LiveCoding.json" -WaitMutex -LiveCodingLimit=100
  Log file: C:\Users\imamu\AppData\Local\UnrealBuildTool\Log.txt
  Creating makefile for TestEditor (Build.version is newer)
  Parsing headers for TestEditor
    Running Internal UnrealHeaderTool C:\Users\imamu\GameCreate\Practice\UnrealEngine5\Practice\Test\Test.uproject C:\Users\imamu\GameCreate\Practice\UnrealEngine5\Practice\Test\Intermediate\Build\Win64\TestEditor\Development\TestEditor.uhtmanifest -WarningsAsErrors -installed
  Total of 0 written
  Reflection code generated for TestEditor in 0.9514502 seconds
  Building TestEditor...
  Using Visual Studio 2022 14.34.31946 toolchain (C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933) and Windows 10.0.22621.0 SDK (C:\Program Files (x86)\Windows Kits\10).
  [Upgrade]
  [Upgrade] Using backward-compatible include order. The latest version of UE has changed the order of includes, which may require code changes. The current setting is:
  [Upgrade]     IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_1
  [Upgrade] Suppress this message by setting 'IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_2;' in TestEditor.Target.cs.
  [Upgrade] Alternatively you can set this to 'EngineIncludeOrderVersion.Latest' to always use the latest include order. This will potentially cause compile errors when integrating new versions of the engine.
  [Upgrade]
  Determining max actions to execute in parallel (12 physical cores, 20 logical cores)
    Executing up to 12 processes, one per physical core
    Requested 1.5 GB free memory per action, 10.19 GB available: limiting max parallel actions to 6
  Building 11 actions with 6 processes...
  [1/11] Compile [x64] SharedPCH.Engine.ShadowErrors.InclOrderUnreal5_1.cpp
  [2/11] Compile [x64] Test.cpp
  [3/11] Compile [x64] CPPHelloWorld.gen.cpp
  [4/11] Compile [x64] Test.init.gen.cpp
  [5/11] Compile [x64] CPPComponent.cpp
  C:\Users\imamu\GameCreate\Practice\UnrealEngine5\Practice\Test\Source\Test\Public\CPPComponent.h(12): error C2079: 'ACPPComponent' ?? ??????class 'CPP_BP_API' ?Ŏg?p???Ă??܂??B


~以下文字化けしたエラーが続く~ 


C:\Users\imamu\GameCreate\Practice\UnrealEngine5\Practice\Test\Intermediate\Build\Win64\UnrealEditor\Inc\Test\UHT\CPPComponent.gen.cpp(148): error C2440: '????': 'UClass *(__cdecl *)(void)' ????'UClass *(__cdecl *)(void)' ?ɕϊ??ł??܂???
  C:\Users\imamu\GameCreate\Practice\UnrealEngine5\Practice\Test\Intermediate\Build\Win64\UnrealEditor\Inc\Test\UHT\CPPComponent.gen.cpp(148): note: ?X?R?[?v?????̖??O???肳?ꂽ?֐??Ń^?[?Q?b?g?^?Ɉ??????̂͂???????
  [7/11] Compile [x64] TestGameModeBase.gen.cpp
  [8/11] Compile [x64] CPPVariable.gen.cpp
  [9/11] Compile [x64] TestGameModeBase.cpp
  [10/11] Compile [x64] CPPVariable.cpp
  [11/11] Compile [x64] CPPHelloWorld.cpp
Build failed.

VSCodeでもエラーが発生するので、UE5自体に問題があると考えました。そのため、UE5とEpic Games Launcher のアンインストールと再インストール、再起動、検証する、を試しました。ですが、同じエラーが発生したままで解決できませんでした。

・検索するとどうやら

この方のように「C++プロジェクトでパスにマルチバイト文字(日本語)が含まれている場合エラーが発生する」ようです。ですが、私の場合はパスに日本語を含んでいないので当てはまらないと考えました。

・一番上のエラーをよく見ると

AssetDataTagMap.hの177付近で発生

	// This bit is always zero in user mode addresses and most likely wont be used by current or future

	// CPU features like ARM's PAC / Top-Byte Ignore or Intel's Linear Address Masking / 5-Level Paging
#if defined(__x86_64__) || defined(_M_X64)
	static constexpr uint32 KernelAddressBit = 63;
#elif defined(__aarch64__) || defined(_M_ARM64)
	static constexpr uint32 KernelAddressBit = 55;
#else
	#error Unsupported architecture, please declare which address bit distinguish user space from kernel space
#endif

ここのelseの部分でエラーが発生しているようです。つまり、KernelAddressBitを上手く設定できていないことが原因なのかなと考えました。ですが、この部分を検索しても良い情報が得られず、また私自身プログラミング初心者で低レベルの知識がないため、自身でのデバッグは困難であると判断し、今回質問させていただきました。

ちなみに自身が使用しているデバイスは、

|プロセッサ|12th Gen Intel(R) Core™ i7-12700F 2.10 GHz|
|実装 RAM|32.0 GB
グラボ GeForce RTX 3070

であるため、なぜアーキテクチャがサポートされていないのか分かりません。

Test というプロジェクト名はやめたほうが良いかと
一般的に予約語になりそうな名前は避けるほうが無難です

UnrealEngine内で特別な扱いになっている単語をプロジェクト名に使うとうまくビルドできない、というケースが存在します
Test 以外にも Windows Switch などプラットフォーム名に使用されている単語も避けるべきです


あと、エラー一覧はUnrealEngineの開発ではあてにならないので、見ないようにしましょう
エラーはすべて出力タブにあるログを見て判断します

Test というプロジェクト名はやめたほうが良いかと
一般的に予約語になりそうな名前は避けるほうが無難です

UnrealEngine内で特別な扱いになっている単語をプロジェクト名に使うとうまくビルドできない、というケースが存在します
Test 以外にも Windows Switch などプラットフォーム名に使用されている単語も避けるべきです

=> 以降気を付けます。

あと、エラー一覧はUnrealEngineの開発ではあてにならないので、見ないようにしましょう
エラーはすべて出力タブにあるログを見て判断します

=> そうなのですね。エラーが発生しているのだと勘違いしていました。

回答して頂きありがとうございました。

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.