Ошибка при создании .exe с помощью Pyinstaller - PullRequest
0 голосов
/ 01 августа 2020

Я создал простую программу HelloWorld и попытался создать .exe с помощью PyInstaller. Exe создается, но не запускается.

Ошибки при компиляции

PS E:\Pot> pyinstaller it.py
62 INFO: PyInstaller: 3.6
62 INFO: Python: 3.8.3
62 INFO: Platform: Windows-10-10.0.18362-SP0
62 INFO: wrote E:\Pot\it.spec
62 INFO: UPX is not available.
62 INFO: Extending PYTHONPATH with paths
['E:\\Pot', 'E:\\Pot']
62 INFO: checking Analysis
62 INFO: Building Analysis because Analysis-00.toc is non existent
62 INFO: Initializing module dependency graph...
62 INFO: Caching module graph hooks...
78 INFO: Analyzing base_library.zip ...
Traceback (most recent call last):
  File "<string>", line 41, in <module>
  File "<string>", line 13, in walk_packages
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\pkgutil.py", line 130, in iter_modules
    for name, ispkg in iter_importer_modules(i, prefix):
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\pkgutil.py", line 149, in _iter_file_finder_modules
    import inspect
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\inspect.py", line 40, in <module>
    import linecache
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\linecache.py", line 11, in <module>
    import tokenize
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\tokenize.py", line 32, in <module>
    import re
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\re.py", line 145, in <module>
    class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
Traceback (most recent call last):
  File "<string>", line 41, in <module>
  File "<string>", line 13, in walk_packages
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\pkgutil.py", line 130, in iter_modules
    for name, ispkg in iter_importer_modules(i, prefix):
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\pkgutil.py", line 149, in _iter_file_finder_modules
    import inspect
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\inspect.py", line 40, in <module>
    import linecache
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\linecache.py", line 11, in <module>
    import tokenize
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\tokenize.py", line 32, in <module>
    import re
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\re.py", line 145, in <module>
    class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
2514 INFO: Processing pre-find module path hook   distutils
2514 INFO: distutils: retargeting to non-venv dir 'c:\\users\\paritosh malik\\appdata\\local\\programs\\python\\python38\\lib'
3952 INFO: Caching module dependency graph...
4014 INFO: running Analysis Analysis-00.toc
4014 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
  required by c:\users\paritosh malik\appdata\local\programs\python\python38\python.exe
4280 INFO: Analyzing E:\Pot\it.py
4280 INFO: Processing module hooks...
4280 INFO: Loading module hook "hook-distutils.py"...
4295 INFO: Loading module hook "hook-encodings.py"...
Traceback (most recent call last):
  File "<string>", line 41, in <module>
  File "<string>", line 13, in walk_packages
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\pkgutil.py", line 130, in iter_modules
    for name, ispkg in iter_importer_modules(i, prefix):
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\pkgutil.py", line 149, in _iter_file_finder_modules
    import inspect
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\inspect.py", line 40, in <module>
    import linecache
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\linecache.py", line 11, in <module>
    import tokenize
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\tokenize.py", line 32, in <module>
    import re
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\re.py", line 145, in <module>
    class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
4389 INFO: Loading module hook "hook-lib2to3.py"...
4389 INFO: Loading module hook "hook-pydoc.py"...
4389 INFO: Loading module hook "hook-sysconfig.py"...
4389 INFO: Loading module hook "hook-xml.etree.cElementTree.py"...
4389 INFO: Loading module hook "hook-xml.py"...
4436 INFO: Loading module hook "hook-_tkinter.py"...
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\tkinter\__init__.py", line 39, in <module>
    import re
  File "c:\users\paritosh malik\appdata\local\programs\python\python38\lib\re.py", line 145, in <module>
    class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
4592 ERROR: Tcl/Tk improperly installed on this system.
4608 INFO: Looking for ctypes DLLs
4655 INFO: Analyzing run-time hooks ...
4655 INFO: Including run-time hook 'pyi_rth__tkinter.py'
4655 INFO: Including run-time hook 'pyi_rth_multiprocessing.py'
4670 INFO: Looking for dynamic libraries
4717 WARNING: lib not found: pywintypes38.dll dependency of c:\users\paritosh malik\appdata\local\programs\python\python38\lib\site-packages\win32\win32evtlog.pyd
4733 WARNING: lib not found: pywintypes38.dll dependency of c:\users\paritosh malik\appdata\local\programs\python\python38\lib\site-packages\win32\win32api.pyd
4889 INFO: Looking for eggs
4889 INFO: Using Python library c:\users\paritosh malik\appdata\local\programs\python\python38\python38.dll
4889 INFO: Found binding redirects:
[]
4889 INFO: Warnings written to E:\Pot\build\it\warn-it.txt
4936 INFO: Graph cross-reference written to E:\Pot\build\it\xref-it.html
4951 INFO: checking PYZ
4951 INFO: Building PYZ because PYZ-00.toc is non existent
4951 INFO: Building PYZ (ZlibArchive) E:\Pot\build\it\PYZ-00.pyz
5529 INFO: Building PYZ (ZlibArchive) E:\Pot\build\it\PYZ-00.pyz completed successfully.
5545 INFO: checking PKG
5545 INFO: Building PKG because PKG-00.toc is non existent
5545 INFO: Building PKG (CArchive) PKG-00.pkg
5561 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully.
5561 INFO: Bootloader c:\users\paritosh malik\appdata\local\programs\python\python38\lib\site-packages\PyInstaller\bootloader\Windows-64bit\run.exe
5561 INFO: checking EXE
5561 INFO: Building EXE because EXE-00.toc is non existent
5561 INFO: Building EXE from EXE-00.toc
5576 INFO: Appending archive to EXE E:\Pot\build\it\it.exe
5576 INFO: Building EXE from EXE-00.toc completed successfully.
5576 INFO: checking COLLECT
5576 INFO: Building COLLECT because COLLECT-00.toc is non existent
5592 INFO: Building COLLECT COLLECT-00.toc
5811 INFO: Building COLLECT COLLECT-00.toc completed successfully.

Ошибка при запуске .exe

PS E:\Pot> dist\it\it
Python path configuration:
  PYTHONHOME = 'E:\Pot\dist\it'
  PYTHONPATH = (not set)
  program name = 'E:\Pot\dist\it\it.exe'
  isolated = 0
  environment = 0
  user site = 0
  import site = 0
  sys._base_executable = 'E:\\Pot\\dist\\it\\it.exe'
  sys.base_prefix = ''
  sys.base_exec_prefix = ''
  sys.executable = 'E:\\Pot\\dist\\it\\it.exe'
  sys.prefix = ''
  sys.exec_prefix = ''
  sys.path = [
    'E:\\Pot\\dist\\it\\base_library.zip',
    'E:\\Pot\\dist\\it',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
LookupError: unknown encoding: utf-8

Current thread 0x000046f8 (most recent call first):
<no Python frame>
PS E:\Pot>

Я попытался добавить «utf_8.py c» в папку кодировок в base_library.zip, но затем он показывает другую ошибку init_sys_streams Итак, я думаю, что ошибка заключается в отсутствии файлов в base_library.zip Пожалуйста, помогите .. Пожалуйста, помогите .. Пожалуйста, помогите .. Пожалуйста, помогите ..

1 Ответ

0 голосов
/ 01 августа 2020

Pyinstaller еще не поддерживает Python 3.8, см. Этот открытый запрос функции: https://github.com/pyinstaller/pyinstaller/issues/4311

Попробуйте вместо этого Python 3.7.

...