`freeze.py` doesn't work on Windows
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 77.2k
- Forks
- 35.9k
- Métriques de merge des PR
- Métriques de PR en attente
Description
Bug report
Bug description:
I tried to run freeze.py under the README instructions here.
# Assumed I was in the Python source tree root
python .\Tools\freeze\freeze.py -p . -o hello .\PCbuild\amd64\tests\hello.py
It did generate lots of .c source files. But when I ran nmake to generate the target, it complained as follows
Microsoft (R) Program Maintenance Utility Version 14.43.34809.0
Copyright (C) Microsoft Corporation. All rights reserved.
if not exist Build\Release\. mkdir Build\Release
NMAKE : fatal error U1073: don't know how to make '".\Python\frozenmain.c"'
Stop.
It looks like it could not find the correct Python path. Then I tried ran the command without the output directory option
python .\Tools\freeze\freeze.py -p . .\PCbuild\amd64\tests\hello.py
And ran nmake. It complained as follows
Microsoft (R) Program Maintenance Utility Version 14.43.34809.0
Copyright (C) Microsoft Corporation. All rights reserved.
frozenmain.c
./Include\Python.h(14): fatal error C1083: Cannot open include file: 'pyconfig.h': No such file or directory
NMAKE : fatal error U1077: 'cl -c -nologo /FoBuild\Release\frozenmain /MD /Ox /D BUILD_FREEZE "-I./Include" "-I./PC" ".\Python\frozenmain.c"' : return code '0x2'
Stop.
I found the PC\pyconfig.h was removed since Python3.13. Should we update the document?
CPython versions tested on:
CPython main branch
Operating systems tested on:
Windows
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par Tools/freeze/README et Tools/freeze/freeze.py, puis reproduisez avec nmake les commandes Windows du rapport. Vérifiez comment le répertoire de sortie et les chemins d’inclusion Windows sont gérés, notamment l’absence de PC/pyconfig.h signalée dans le rapport. Le travail est terminé lorsque les instructions Windows ou l’implémentation de freeze produisent une compilation sans les erreurs de chemin et d’en-tête signalées dans le rapport.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- build-system, documentation, operating-systems
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100