I’ve got a working blueprint function library plugin written in C++. I’ve got Visual Studio 2019 installed, although the development environment is in C:\Applications rather than C:\Programs (x86). When I try to package the plugin, I see this in the Output Log:
UATHelper: Package Plugin Task (Windows): Building plugin for target platforms: Android, IOS, Linux, LinuxAArch64, Win64, Win32
UATHelper: Package Plugin Task (Windows): Running: C:\Unreal4.26\UE_4.26\Engine\Binaries\DotNET\UnrealBuildTool.exe UE4Game Win64 Development -Project=C:\UnrealProjects\FileIOPlugin\BPFileIOPlugin\HostProject\HostProject.uproject -plugin=C:\UnrealProjects\FileIOPlugin\BPFileIOPlugin\HostProject\Plugins\BPFileIOPlugin\BPFileIOPlugin.uplugin -iwyu -noubtmakefi
les -manifest=C:\UnrealProjects\FileIOPlugin\BPFileIOPlugin\HostProject\Saved\Manifest-UE4Game-Win64-Development.xml -nohotreload -2017 -log=“C:\Users\couvilliw\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Unreal4.26+UE_4.26\UBT-UE4Game-Win64-Development.txt”
UATHelper: Package Plugin Task (Windows): ERROR: Visual Studio 2017 must be installed in order to build this target.
Summarizing what’s weird about that:
- It’s attempting to package for a bunch of platforms, although in the .uplugin and .uproject files, I’ve whitelisted only Win64
- It’s attempting to call Visual Studio 2017. In my AppData\Roaming\Unreal Engine\UnrealBuildTool\BuildConfiguration.xml file, I’ve specified MSVS2019 as the Version in the VCProjectFileGenerator section
How do I make sure UnrealBuildTool uses the right version of Visual Studio?