Closed
Description
Bug report
I am building python in a directory that has non-ascii name on linux and get the following error:
./_bootstrap_python ./Programs/_freeze_module.py abc ./Lib/abc.py Python/frozen_modules/abc.h
Exception ignored error evaluating path:
Traceback (most recent call last):
File "<frozen getpath>", line 349, in <module>
ModuleNotFoundError: No module named 'encodings'
Fatal Python error: error evaluating path
Python runtime state: core initialized
Current thread 0x00007f16d6c10740 (most recent call first):
<no Python frame>
make: *** [Makefile:1218: Python/frozen_modules/abc.h] Error 1
The problem seems to be that the limited environment used to execute the precompiled Modules/getpath.py
does not have the encodings
module.
I tracked the exception to a PyImport_ImportModule("encodings");
call in Python/codecs.c
which is a consequence of a PyCodec_LookupError
that happens in ucs2lib_utf8_encoder
which I think gets called in getpath_dirname
.
The original string is /home/pgy/letöltések/cpython/_bootstrap_python
, and the unicode object ucs2lib_utf8_encoder
gets as an argument is:
(rr) p PyObject_Print(unicode, stderr, 0)
'/home/pgy/let\udcc3\udcb6lt\udcc3\udca9sek/cpython/_bootstrap_python'
Your environment
- CPython versions tested on: 7db1d2e
- Operating system and architecture:
Linux hostname 5.15.44-1-lts #1 SMP Mon, 30 May 2022 13:45:47 +0000 x86_64 GNU/Linux