Closed alastairUK closed 1 year ago
Hello @alastairUK, Thanks for reporting. Similar VC tools behavior is tracked in https://github.com/actions/runner-images/issues/7832, so I will close this issue as a duplicate. Feel free to reach out in case of concerns
This workaround https://github.com/actions/runner-images/issues/7832 does work
ClCompile: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.36.32532\bin\HostX86\x64\CL.exe
But...
It takes a LONG time on Azure Devops to run the command listed in https://github.com/actions/runner-images/issues/7832
It takes 10m 12s when the build of my sln is only 2m 40s so it's not feeling like a great solution for my use case.
Same issue with 17.7: it stays prefers 14.36 to 14.37 if both are installed. It is somehow related to the presence of C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\Microsoft.VCToolsVersion.v143.props, that specifies old toolset. This file seems to be present only if previous multiple toolsets are available.
Strikes me that the default behaviour should always to use the latest version and any workaround should be for people wanting to use older versions of the compiler. As I mention above the workaround takes too long to run in Azure Devops
Description
I guess this is related to
https://github.com/actions/runner-images/issues/7700
https://github.com/actions/runner-images/issues/7487
and I am pretty sure it was working recently but today (6th July) I am seeing
ClCompile: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.35.32215\bin\HostX86\x86\CL.exe
in my build output when i'd expect it to be using 14.36.xxxx
Platforms affected
Runner images affected
Image version and build link
Starting: Initialize job Agent name: 'Hosted Agent' Agent machine name: 'fv-az794-465' Current agent version: '3.220.5' Operating System Microsoft Windows Server 2022 10.0.20348 Datacenter Runner Image Image: windows-2022 Version: 20230625.1.0 Included Software: https://github.com/actions/runner-images/blob/win22/20230625.1.0/images/win/Windows2022-Readme.md Image Release: https://github.com/actions/runner-images/releases/tag/win22%2F20230625.1.0 Runner Image Provisioner 2.0.238.1 Current image version: '20230625.1.0' Agent running as: 'VssAdministrator' Prepare build directory. Set build variables. Download all required tasks. Downloading task: NuGetToolInstaller (0.221.0) Downloading task: NuGetCommand (2.222.0) Downloading task: VSBuild (1.214.0) Downloading task: VSTest (2.220.0) Downloading task: CopyFiles (2.211.0) Downloading task: PublishBuildArtifacts (1.223.1) Checking job knob settings. Knob: DockerActionRetries = true Source: $(VSTSAGENT_DOCKER_ACTION_RETRIES) Knob: AgentToolsDirectory = C:\hostedtoolcache\windows Source: ${AGENT_TOOLSDIRECTORY} Knob: AgentPerflog = c:\vsts\perflog Source: ${VSTS_AGENT_PERFLOG} Knob: ContinueAfterCancelProcessTreeKillAttempt = true Source: $(VSTSAGENT_CONTINUE_AFTER_CANCEL_PROCESSTREEKILL_ATTEMPT) Finished checking job knob settings. Start tracking orphan processes.
Is it regression?
Version: 20230620.1.0
Expected behavior
I'd expect as the VS version is
Visual Studio Enterprise 2022 | 17.6.33815.320
That it would be using
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.36.xxxx
Not 14.35
Actual behavior
ClCompile: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.35.32215\bin\HostX86\x86\CL.exe
Repro steps
Compile a C++ project using MSBuild on Azure Devops and look at the build output