Closed zlojvavan closed 1 year ago
Thanks for posting this issue. It's not that vcpkg doesn't support win7, but the tools used by vcpkg like PowerShell or Python3.10 don't support win7. If you want to use vcpkg on win7, you can manually modify the tool version used by vcpkg in the following files, so that vcpkg can continue to work.
@LilyWangLL thanks for your answer
If you want to use vcpkg on win7, you can manually modify the tool version used by vcpkg in the following files, so that vcpkg can continue to work
could you please suggest what exactly am I supposed to put there (in "tool name="powershell-core" os="windows"" section in c:\Project\Libs\vcpkg\scripts\vcpkgTools.xml) before trying to run vcpkg again?
thank you
could you please suggest what exactly am I supposed to put there (in "tool name="powershell-core" os="windows"" section in c:\Project\Libs\vcpkg\scripts\vcpkgTools.xml) before trying to run vcpkg again?
You could modify this file in your vcpkg, its path is [VCPKG_ROOT]/scripts/vcpkgTools.xml. You can install port after modifying this file.
You could modify this file in your vcpkg, its path is [VCPKG_ROOT]/scripts/vcpkgTools.xml. You can install port after modifying this file.
I know the path to mine vcpkgTools.xml, it is specified above. the question was what to put there instead of
<tool name="powershell-core" os="windows">
<version>7.3.1</version>
<exeRelativePath>pwsh.exe</exeRelativePath>
<url>https://github.com/PowerShell/PowerShell/releases/download/v7.3.1/PowerShell-7.3.1-win-x86.zip</url>
<sha512>0a2324a668b448271f3f4f74034d4e3ac636c50e4c228a3ddad3472d97b149016855f3bce96f96a04cb74dd3d8c1ee23e9bccbdc4396b15a8039f87fb212d832</sha512>
<archiveName>PowerShell-7.3.1-win-x86.zip</archiveName>
</tool>
I know the path to mine vcpkgTools.xml, it is specified above. the question was what to put there instead of
@zlojvavan Billy open a PR #29054 will roll back the version of PowerShell to 7.2.x, it will resolve this issue.
Billy open a PR #29054 will roll back the version of PowerShell to 7.2.x, it will resolve this issue.
@LilyWangLL good to know, thank you! you also mentioned Python in your original answer
@LilyWangLL good to know, thank you! you also mentioned Python in your original answer
The difference is that vcpkg itself deploys things that use PowerShell, but you only get Python dependencies if you use a port that actually needs Python. vcpkg itself is, for now, intended to work on Win7, but that does not mean everything in the catalog will care about it.
Given that Win7 has been out of support for 3 years now, I would not assume that things will keep working with it for much longer. We did a 'panic' revert of PowerShell to restore functionality here, but I strongly suggest looking at updating to Win10 or later as the day where we won't be able to do that is not far away. At least be making plans for it if not pulling the trigger yet.
Here you can take the latest Python running under Windows 7. Fortunately, we still have savvy persons out there who could analyze creepy changes coming from Silicon Valley cubicles and find out that sometimes it is enough to patch just one file to resume operations, e.g. api-ms-win-core-path-l1-1-0.dll.
Perhaps, someone will create a patch for PowerShell 7.3+ too (or for .NET 7 if that matters) as there is no real need to upgrade to Windows 10, it's far-fetched. We don't get anything significant, whereas the upgrade in previous years enabled a transition to a more robust NTFS filesystem and expanded a memory limit thanks to 64-bits.
Lots of us don't care Windows 7 is not officially supported despite years of direct and indirect fearmongering via systray and media outlets. Actually it has been working fine at homes and offices. I have inherited a garage full of tools made decades ago with expired warranty, but they still perform, e.g. the hammer still hammers.
regarding the statement above:
Given that Win7 has been out of support for 3 years now
This is not technically correct!
the real end of life for old good golden Windows 7 SP1 was in 2023!
and....... ta-da
some special Windows 7 are supported even in 2024 !!!
https://learn.microsoft.com/en-us/lifecycle/products/windows-embedded-posready-7
You can purchase ESU for the express purpose of "keeping your old stuff that you aren't changing running". For all practical development purposes, ESU changes nothing about what's in support, and should change nothing about what one should be targeting in their products.
Describe the bug today tried to install new package and during standard procedures vcpkg decided to update powershell which failed to run on win7 due to end of support
Environment
To Reproduce Steps to reproduce the behavior:
Additional context https://github.com/PowerShell/PowerShell/issues/18854 https://learn.microsoft.com/en-us/powershell/scripting/install/PowerShell-Support-Lifecycle?view=powershell-7.3 https://github.com/dotnet/core/issues/7556