ImportError: No module named _bootlocale with Python 3.10

1,300 views
Skip to first unread message

Giovanni Allegri

unread,
Oct 8, 2021, 3:23:16 PM10/8/21
to PyInstaller
I've just updated to Python 3.10.0 for Windows.
A quick test of PyInstaller resulted in the followign error:

3842 INFO: distutils: retargeting to non-venv dir '<hidden-path>\\Python310\\lib'
Traceback (most recent call last):
  File "<hidden-path>\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "<hidden-path>\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "<hidden-path>\Python310\Scripts\pyinstaller.exe\__main__.py", line 7, in <module>
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\__main__.py", line 126, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\__main__.py", line 65, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\building\build_main.py", line 815, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\building\build_main.py", line 762, in build
    exec(code, spec_namespace)
  File "D:\dev\python\oscbridge\app.spec", line 7, in <module>
    a = Analysis(['app.py'],
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\building\build_main.py", line 294, in __init__
    self.__postinit__()
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\building\datastruct.py", line 159, in __postinit__
    self.assemble()
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\building\build_main.py", line 394, in assemble
    self.graph = initialize_modgraph(
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\depend\analysis.py", line 882, in initialize_modgraph
    graph = PyiModuleGraph(
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\depend\analysis.py", line 122, in __init__
    self._analyze_base_modules()
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\depend\analysis.py", line 289, in _analyze_base_modules
    self._base_modules = [mod
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\depend\analysis.py", line 291, in <listcomp>
    for mod in self.import_hook(req)]
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1505, in import_hook
    target_package, target_module_partname = self._find_head_package(
  File "<hidden-path>\Python310\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1711, in _find_head_package
    raise ImportError("No module named " + target_package_name)
ImportError: No module named _bootlocale

I've found this post https://bugzilla.redhat.com/show_bug.cgi?id=1899950 where (if I understand correcly) _bootlocale was removed from Python 3.10.0.

I can jump back to Python 3.9.0 for the moment but I guess this change will have to be managed inside PyInstaller.

Giovanni
Reply all
Reply to author
Forward
0 new messages