UE5.4のVS2022互換性バグ修正

2025/04/09に公開

コンパイル時に生じたエラーを修正。

visual studioのバージョンが違うことにより、UE5.4が正常に動作しなくなるケースがあることを確認。
ビルドができないことにより、以下のようなエラーが生じた。

'__has_feature' は、'#if/#elif' を '0' に置換するプリプロセッサ マクロとして定義されていません。
#error ディレクティブ: Unsupported architecture, please declare which address bit distinguish user space from kernel space
'override' で宣言されたメンバー関数が、基底クラス メンバーをオーバーライドしません
'override' で宣言されたメンバー関数が、基底クラス メンバーをオーバーライドしません
などなど...
visualstudiosetup.exe --channelUri https://aka.ms/vs/17/release.LTSC.17.8/channel

を実行する。
https://visualstudio.microsoft.com/ja/downloads/?cid=learn-onpage-download-install-visual-studio-page-cta
ここからVisualStudioSetup.exeをダウンロード。

ダウンロードしたVisualStudioSetup.exe向けに

VisualStudioSetup.exe --channelUri https://aka.ms/vs/17/release.LTSC.17.8/channel

を実行。

必ずインストーラーのインスタンスがないことを確認してください。

その後、ワークロードの追加のダイアログが表示されるので追加します。
[ワークロード]
・CPPによるデクストップ開発
・C++によるゲーム開発
 ・UnrealEngineのインストーラー
 ・Windows 11 SDK
[個別のコンポーネント]
・v143ビルドツール用のC++v14.38(17.8)ATL(x86およびx64)
・MSVC v143 - VS 2022 C++ x64/x86 ビルドツール(v14.38-17.8)

を追加してください。

注意ですが、LSTC 17.8を入れる前に入れてたVSがある場合は、そちらでワークロードとコンポーネントを入れるか、消すかしてください。

そしたら、Visual Studio Community 2022 LTSC 17.8がダウンロードされます。

Discussion