Toolchain Error Generating Project Files for VS 2022

Unreal的构建系统是由C#来进行支持的,当我们拉取完Unreal的源码后,我们只要按照官方的指示走,在99%的情况下都不会出大问题。不过这次我却稍微碰到了一个从来没有看过的情况。

Unable to find valid latest C++ toolchain for VisualStudio2022 x64

报错提示为无法找到Visual Studio的C++工具链,当然实际上我清楚我的工具链是没有问题的,因为我已经用这套工具链用了很长时间,从来没有出现过类似的问题,故问题一定是在Unreal的build tool上,在互联网冲浪了一番后,我在官方论坛里面找到了答案。

https://forums.unrealengine.com/t/toolchain-error-generating-project-files-for-vs-2022-ue-5-1/750069

简单来说,当Unreal进行工具链检索时,它默认只会搜索Latest版本的工具链来进行构建,如果你的Visual Studio是Preview版的话,就会报我上面的那个错误。

具体解决方式就是把Engine\Platforms\Hololens\Source\Programs\UnrealBuildTool\HoloLensProjectGenerator.cs中第87行的代码修改为以下格式。

1
DirectoryReference? PlatformWinMDLocation = HoloLensPlatform.GetCppCXMetadataLocation(Compiler, "Preview", WindowsArchitecture.x64, Logger); // 原先指定的是Latest

修改完毕后就没什么问题,换上好点的固态硬盘和CPU,直接开编Unreal即可。