Bump to 4.2.2: Windows CRT WOW64/Sysnative fix (flet #6436)#227
Open
FeodorFitsner wants to merge 2 commits into
Open
Bump to 4.2.2: Windows CRT WOW64/Sysnative fix (flet #6436)#227FeodorFitsner wants to merge 2 commits into
FeodorFitsner wants to merge 2 commits into
Conversation
…tion Flutter may drive the CMake install step with the 32-bit cmake.exe bundled in VS Build Tools. Under WOW64 file-system redirection that process sees C:\Windows\System32 rewritten to SysWOW64, which holds x86 CRT DLLs and has no vcruntime140_1.dll, so the x64 build copies wrong-arch DLLs and then fails with "file INSTALL cannot find vcruntime140_1.dll". Prefer the Sysnative pseudo-folder (visible only to 32-bit processes, maps to the real 64-bit System32) when present, falling back to System32 for native 64-bit cmake. Fixes flet-dev/flet#6436
Bump all serious_python_* packages to 4.2.2. The substantive change is the Windows CRT DLL harvesting fix (Sysnative fallback) for flet-dev/flet#6436; other platforms are alignment-only bumps.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Prepares the 4.2.2 release. All
serious_python_*packages bumped 4.2.1 → 4.2.2. The one substantive change is the Windows CRT fix below; every other platform is an alignment-only bump. No python-build snapshot re-pin.The Windows fix
flet build windowsfails during the CMake install step with:…for users who have VS Build Tools (not full Visual Studio) installed.
Root cause
This plugin bundles the CRT runtime DLLs (
msvcp140.dll,vcruntime140.dll,vcruntime140_1.dll) by harvesting them from%WINDIR%\System32. Flutter drives the install step with the 32-bitcmake.exebundled in VS Build Tools. Under WOW64 file-system redirection a 32-bit process transparently seesC:\Windows\System32rewritten toC:\Windows\SysWOW64, which:msvcp140.dll/vcruntime140.dll(wrong arch for the x64 build — they get copied but are broken), andvcruntime140_1.dllat all → hard "file not found" failure.With full Visual Studio the bundled cmake is 64-bit, no redirection happens, and the build works — which is exactly the "install full VS" workaround reported in the issue.
Fix
Prefer the
Sysnativepseudo-folder, which is visible only to 32-bit processes and maps back to the real 64-bitSystem32. Native 64-bit cmake has noSysnative, so it falls back toSystem32unchanged. Configure- and install-time cmake are the same binary under Flutter, so the path resolved at configure time stays valid whencmake_install.cmakeruns.Testing
Sysnativebranch).Fixes flet-dev/flet#6436 (also relates to flet-dev/flet#5205, flet-dev/flet#3107).