You may not know the answer, but I thought I'd still ask.
Previously, we were able to install older toolsets by running vs_BuildTools.exe with --add <component>.
With VS2022, it looks like toolset v141 should be available and the following succeeds on windows-2022
Invoke-WebRequest -Uri "https://aka.ms/vs/17/release/vs_BuildTools.exe" -OutFile "vs_BuildTools.exe"
Start-Process -FilePath ./vs_BuildTools.exe -ArgumentList "--add", "Microsoft.VisualStudio.Component.VC.v141.x86.x64", "--quiet", "--norestart", "--force", "--wait" -Wait -PassThru
Running this action like so
uses: ilammy/msvc-dev-cmd@v1
if: |
matrix.sln == 'vs2017'
with:
arch: win32
toolset: '14.1'
also does not return an error, however if I want to use nmake, that's not found in PATH.
Here is the failing action: https://github.com/black-sliver/lua-apclientpp/actions/runs/16338050529/job/46154064455
If you unfold the failing step, you see which env vars were actually set by msvc-dev-cmd to what.
Do you have any idea what I might be missing? My assumption right now is that the toolset v141 does not ship a full dev environment in vs2022 and so does not work from command line, but it could also be that msvc-dev-cmd does not correctly enter the environment?
The build has 2 steps, one is using nmake and one is using msbuild. Neither seems to be working with v141.
There are kind of 2 reason why I would want to use v141:
- the .sln/proj is vs2017/v141 and I don't really want to "upgrade" it every other year (originally we were using vs2015/v140)
- the thing I am building is a DLL that can be loaded by various EXEs and while toolset/libc is back compatible in 14.x, it is not forward compatible, so I would like to target a 14.x that is as old as possible to maximize compatibility
(Side note: The whole windows-2022 and vs2022 situation makes me want to move away from using any Microsoft tools: Various things were broken (and some still are) and all available Windows images ship the same VS now, so there is no downgrade path. I think at this point, my time would've been better spent trying to figure out if we can build OpenSSL with a different toolchain.)
You may not know the answer, but I thought I'd still ask.
Previously, we were able to install older toolsets by running vs_BuildTools.exe with
--add <component>.With VS2022, it looks like toolset v141 should be available and the following succeeds on windows-2022
Running this action like so
also does not return an error, however if I want to use
nmake, that's not found in PATH.Here is the failing action: https://github.com/black-sliver/lua-apclientpp/actions/runs/16338050529/job/46154064455
If you unfold the failing step, you see which env vars were actually set by msvc-dev-cmd to what.
Do you have any idea what I might be missing? My assumption right now is that the toolset v141 does not ship a full dev environment in vs2022 and so does not work from command line, but it could also be that
msvc-dev-cmddoes not correctly enter the environment?The build has 2 steps, one is using nmake and one is using msbuild. Neither seems to be working with v141.
There are kind of 2 reason why I would want to use v141:
(Side note: The whole windows-2022 and vs2022 situation makes me want to move away from using any Microsoft tools: Various things were broken (and some still are) and all available Windows images ship the same VS now, so there is no downgrade path. I think at this point, my time would've been better spent trying to figure out if we can build OpenSSL with a different toolchain.)