Message406769
It also seems that it is *not* necessary to use Python 3.11 for regen-frozen to get the failure:
$ make regen-frozen PYTHON_FOR_REGEN=python3.10
python3.10 ../../Tools/scripts/freeze_modules.py
ERROR: missing _freeze_module
make: *** [Makefile:1259: regen-frozen] Error 1
$ make regen-frozen PYTHON_FOR_REGEN=python3.9
python3.9 ../../Tools/scripts/freeze_modules.py
ERROR: missing _freeze_module
make: *** [Makefile:1259: regen-frozen] Error 1
My guess is that the fix for test_tools.test_sundry() actually broke the real usage. It has:
# When building out of the source tree, get the tool from directory
# of the Python executable
TOOL = os.path.dirname(sys.executable)
TOOL = os.path.join(TOOL, 'Programs', '_freeze_module')
But sys.executable is *not* the Python we have built, but the Python we use for regen.
E.g. when Python for regen is /usr/bin/python3.X, it tries to use /usr/bin/Programs/_freeze_module which obviously is not there.
The assumption that sys.executable is the freshly built Python is only correct in the tests, but not in reality. |
|
Date |
User |
Action |
Args |
2021-11-22 12:44:57 | hroncok | set | recipients:
+ hroncok, vstinner, petr.viktorin, eric.snow |
2021-11-22 12:44:57 | hroncok | set | messageid: <1637585097.15.0.883412008716.issue45866@roundup.psfhosted.org> |
2021-11-22 12:44:57 | hroncok | link | issue45866 messages |
2021-11-22 12:44:57 | hroncok | create | |
|