2017-07-14 3 views
0

Dies ist mein erstes Mal mit Pyinstaller, also bitte ertragen Sie mit mir. Warum führt das Folgende zu einem Fehler? Wie repariere ich es? Ich versuche, das Python-Programm, das ich geschrieben habe, in eine Windows EXE zu konvertieren.Pyinstaller und py2exe führen zu einem Fehler: "Tupel Index außerhalb des Bereichs"

C:\WINDOWS\system32>pyinstaller C:\Users\evank\Desktop\Package\program.py 
121 INFO: PyInstaller: 3.2.1 
121 INFO: Python: 3.6.1 
121 INFO: Platform: Windows-10-10.0.15063-SP0 
127 INFO: wrote C:\WINDOWS\system32\program.spec 
127 INFO: UPX is not available. 
129 INFO: Extending PYTHONPATH with paths 
['C:\\Users\\evank\\Desktop\\Package', 'C:\\WINDOWS\\system32'] 
129 INFO: checking Analysis 
131 INFO: Building Analysis because out00-Analysis.toc is non existent 
131 INFO: Initializing module dependency graph... 
138 INFO: Initializing module graph hooks... 
140 INFO: Analyzing base_library.zip ... 
Traceback (most recent call last): 
    File "C:\Program Files\Python36\Scripts\pyinstaller-script.py", line 11, in <module> 
    load_entry_point('PyInstaller==3.2.1', 'console_scripts', 'pyinstaller')() 
    File "c:\program files\python36\lib\site-packages\PyInstaller\__main__.py", line 90, in run 
    run_build(pyi_config, spec_file, **vars(args)) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\__main__.py", line 46, in run_build 
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\building\build_main.py", line 788, in main 
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build')) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\building\build_main.py", line 734, in build 
    exec(text, spec_namespace) 
    File "<string>", line 16, in <module> 
    File "c:\program files\python36\lib\site-packages\PyInstaller\building\build_main.py", line 212, in __init__ 
    self.__postinit__() 
    File "c:\program files\python36\lib\site-packages\PyInstaller\building\datastruct.py", line 161, in __postinit__ 
    self.assemble() 
    File "c:\program files\python36\lib\site-packages\PyInstaller\building\build_main.py", line 317, in assemble 
    excludes=self.excludes, user_hook_dirs=self.hookspath) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\depend\analysis.py", line 560, in initialize_modgraph 
    graph.import_hook(m) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1509, in import_hook 
    source_package, target_module_partname, level) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1661, in _find_head_package 
    target_module_headname, target_package_name, source_package) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\depend\analysis.py", line 209, in _safe_import_module 
    module_basename, module_name, parent_package) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2077, in _safe_import_module 
    module_name, file_handle, pathname, metadata) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2167, in _load_module 
    self._scan_code(m, co, co_ast) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2585, in _scan_code 
    module, module_code_object, is_scanning_imports=False) 
    File "c:\program files\python36\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2831, in _scan_bytecode 
    global_attr_name = get_operation_arg_name() 
    File "c:\program files\python36\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2731, in get_operation_arg_name 
    return module_code_object.co_names[co_names_index] 
IndexError: tuple index out of range 

EDIT: Mit py2exe führt auch in den gleichen Fehler.

Bitte HILFE! Danke, Evank28

Antwort

3

Ok ich fand es heraus. Pyinstaller ist noch nicht für Python 3.6 bereit und dies ist der Fehler, der auftritt, wenn Pyinstaller mit Python 3.6 verwendet wird. Ich habe Pyinstaller deinstalliert und die Entwicklerversion von Pyinstaller mit den folgenden Befehlen in der Eingabeaufforderung installiert.

Dann verwenden Sie pyinstaller auf die gleiche Weise wie üblich und es funktioniert wie ein Charme. Die offizielle Installation funktioniert noch nicht für Python v3.6.

pyinstaller myprogram.py 
Verwandte Themen