Windows Build issues (both target and native)
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- python, zig
- Domain
- build-system, operating-systems
Research direction
Start by reproducing the default build on a Windows host and the x86_64-windows-gnu target from Linux, then compare win11build.txt with linuxToWindow.txt. Trace the failures around freeze_module and openssl before narrowing the two reported build paths. Done means both host and target builds complete successfully.
Written by the indexing model from the issue text.
Description
Windows Build Issues
Windows seems to have issues in terms of both targeting it and building on it as a dev platform. I'll split up the descriptions.
Note: all windows builds were for the gnu abi, so no msvc libc weirdness should be at play.
Windows Issues as a build host
When on windows (which I see is not in the project's CI, that could very much be intentional) when trying to build any target (e.g. even x86_64-linux-musl from a windows host) the build fails when trying to build freeze_module and ssl: win11build.txt. The file is quite large, but I think the important part is around:
Build Summary: 16/54 steps succeeded; 2 failed
install transitive failure
+- install generated/ transitive failure
+- WriteFile lib\python3.12 transitive failure
+- WriteFile cached
+- compile exe python Debug native transitive failure
| +- add module sources/includes to python exe success
| | +- run exe makesetup (gen) cached
| | +- compile exe makesetup Debug native cached 10s MaxRSS:19M
| | +- run exe replace (Setup.bootstrap) cached
| | | +- compile exe replace Debug native cached 10s MaxRSS:19M
| | +- run exe replace (Setup.stdlib) cached
| | +- compile exe replace Debug native (reused)
| +- run exe freeze_module (Python/frozen_modules/getpath.h) transitive failure
| | +- compile exe freeze_module Debug native 15 errors
| | +- add module sources/includes to freeze_module exe success
| | | +- run exe makesetup (gen) cached
| | | +- compile exe makesetup Debug native (reused)
| | | +- run exe replace (Setup.bootstrap) cached
| | | | +- compile exe replace Debug native (reused)
| | | +- run exe replace (Setup.stdlib) cached
| | | +- compile exe replace Debug native (reused)
| | +- run exe makesetup (gen) (+3 more reused dependencies)
| +- run exe freeze_module (Python/frozen_modules/importlib._bootstrap.h) transitive failure
| | +- compile exe freeze_module Debug native (+2 more reused dependencies)
| +- run exe freeze_module (Python/frozen_modules/importlib._bootstrap_external.h) transitive failure
| | +- compile exe freeze_module Debug native (+2 more reused dependencies)
| +- run exe freeze_module (Python/frozen_modules/zipimport.h) transitive failure
| | +- compile exe freeze_module Debug native (+2 more reused dependencies)
| +- run _freeze_module.py for 'Lib/importlib/_bootstrap.py' (frozen_modules/importlib._bootstrap.h) transitive failure
| | +- WriteFile lib\python3.12 transitive failure
| | +- WriteFile cached
| | +- compile exe bootstrap_python Debug native transitive failure
| | | +- add module sources/includes to bootstrap_python exe success
| | | | +- run exe makesetup (gen) (+3 more reused dependencies)
| | | +- run exe freeze_module (Python/frozen_modules/getpath.h) (+1 more reused dependencies)
| | | +- run exe freeze_module (Python/frozen_modules/importlib._bootstrap.h) (+1 more reused dependencies)
| | | +- run exe freeze_module (Python/frozen_modules/importlib._bootstrap_external.h) (+1 more reused dependencies)
| | | +- run exe freeze_module (Python/frozen_modules/zipimport.h) (+1 more reused dependencies)
| | | +- run exe makesetup (gen) (+3 more reused dependencies)
| | +- compile exe bootstrap_python Debug native (+6 more reused dependencies)
| +- run _freeze_module.py for 'Lib/importlib/_bootstrap_external.py' (frozen_modules/importlib._bootstrap_external.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/zipimport.py' (frozen_modules/zipimport.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/abc.py' (frozen_modules/abc.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/codecs.py' (frozen_modules/codecs.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/io.py' (frozen_modules/io.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/_collections_abc.py' (frozen_modules/_collections_abc.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/_sitebuiltins.py' (frozen_modules/_sitebuiltins.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/genericpath.py' (frozen_modules/genericpath.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/ntpath.py' (frozen_modules/ntpath.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/posixpath.py' (frozen_modules/posixpath.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/os.py' (frozen_modules/os.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/site.py' (frozen_modules/site.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/stat.py' (frozen_modules/stat.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/importlib/util.py' (frozen_modules/importlib.util.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/importlib/machinery.py' (frozen_modules/importlib.machinery.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/runpy.py' (frozen_modules/runpy.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/__hello__.py' (frozen_modules/__hello__.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/__phello__/__init__.py' (frozen_modules/__phello__.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/__phello__/ham/__init__.py' (frozen_modules/__phello__.ham.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/__phello__/ham/eggs.py' (frozen_modules/__phello__.ham.eggs.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Lib/__phello__/spam.py' (frozen_modules/__phello__.spam.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- run _freeze_module.py for 'Tools/freeze/flag.py' (frozen_modules/frozen_only.h) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| +- WriteFile cached
| +- compile lib z Debug native cached 10s MaxRSS:19M
| +- WriteFile cached
| +- compile lib openssl Debug native 134 errors
| +- run exe makesetup (gen) (+3 more reused dependencies)
| +- run deepfreeze.py (deepfreeze.c) transitive failure
| | +- WriteFile lib\python3.12 (+3 more reused dependencies)
| | +- add modules to run deepfreeze.py transitive failure
| | +- freeze transitive failure
| | +- run _freeze_module.py for 'Lib/importlib/_bootstrap.py' (frozen_modules/importlib._bootstrap.h) (+1 more reused
dependencies)
| | +- run _freeze_module.py for 'Lib/importlib/_bootstrap_external.py' (frozen_modules/importlib._bootstrap_external.h) (+1 more
reused dependencies)
| | +- run _freeze_module.py for 'Lib/zipimport.py' (frozen_modules/zipimport.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/abc.py' (frozen_modules/abc.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/codecs.py' (frozen_modules/codecs.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/io.py' (frozen_modules/io.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/_collections_abc.py' (frozen_modules/_collections_abc.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/_sitebuiltins.py' (frozen_modules/_sitebuiltins.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/genericpath.py' (frozen_modules/genericpath.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/ntpath.py' (frozen_modules/ntpath.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/posixpath.py' (frozen_modules/posixpath.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/os.py' (frozen_modules/os.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/site.py' (frozen_modules/site.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/stat.py' (frozen_modules/stat.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/importlib/util.py' (frozen_modules/importlib.util.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/importlib/machinery.py' (frozen_modules/importlib.machinery.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/runpy.py' (frozen_modules/runpy.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/__hello__.py' (frozen_modules/__hello__.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/__phello__/__init__.py' (frozen_modules/__phello__.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/__phello__/ham/__init__.py' (frozen_modules/__phello__.ham.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/__phello__/ham/eggs.py' (frozen_modules/__phello__.ham.eggs.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Lib/__phello__/spam.py' (frozen_modules/__phello__.spam.h) (+1 more reused dependencies)
| | +- run _freeze_module.py for 'Tools/freeze/flag.py' (frozen_modules/frozen_only.h) (+1 more reused dependencies)
| +- compile lib z Debug native (reused)
| +- compile lib openssl Debug native (reused)
+- compile exe python Debug native (+36 more reused dependencies)
Again, this happens when building for any target from a windows machine. I tried the same default build step on my linux box and the same build worked.
Windows target issues
This seems a bit more specific to the targeting of windows regardless of build host. On my linux box, I can build the native target and even macos fine. However, when I target x86_64-windows-gnu, I get build errors that seemingly look a bit different from the last section: linuxToWindow.txt
- Dominant language
- Zig
- Stars
- 19
- Forks
- 7
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from allyourcodebase/cpython
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
allyourcodebase/cpython#17 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
allyourcodebase/cpython#8 · 2 comments ·
All issues in allyourcodebase/cpython
Similar issues
-
type/automation type/tech-debt
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
priority: p3
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
googleapis/librarian#7636 ·
-
package-update
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
oSoWoSo/vOid_Community_repOsitory#147 · 1 comment ·
-
Builders
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100