2017-02-19 1 views
0

Je suis en train de créer un exécutable de mon projet Python en utilisant cx_Freeze, mais continue à courir dans cette erreur:En utilisant cx_Freeze pour créer exécutable (ne peut pas importer _tkinter, la charge de DLL n'a pas)

enter image description here

Voici ma configuration py:

import cx_Freeze 
import os, sys 

os.environ['TCL_LIBRARY'] = "D:\\Code\\Python\\3.5.2\\tcl\\tcl8.6" 
os.environ['TK_LIBRARY'] = "D:\\Code\\Python\\3.5.2\\tcl\\tk8.6" 

base = None 
if sys.platform == "win32": 
    base = "Win32GUI" 

executables = [cx_Freeze.Executable("Main.pyw", base=base)] 
includes  = ["tkinter"] 
include_files = [r"D:\Code\Python\3.5.2\tcl\DLLs\tcl86t.dll", \ 
       r"D:\Code\Python\3.5.2\tcl\DLLs\tk86t.dll"] 

cx_Freeze.setup(
    name="Test", 
    version = "1.0", 
    options={"Test.exe": {"packages":["pygame", "numpy"], "includes": includes, "include_files": include_files}}, 
    executables = executables) 

J'ai essayé de mettre tkinter dans la liste des « paquets », mais toujours obtenir la même erreur. J'ai également vérifié d'autres publications de StackOverflow et utilisé des parties de leur code setup.py dans le mien, mais rien ne fonctionne. Je ne peux pas utiliser PyInstaller car il ne supporte pas pygame et py2exe ne supporte pas Python 3.5. Toute aide serait appréciée.

Répondre

0

Copiez et collez les fichiers (tcl86t.dll, tk86t.dll) dans le fichier exe.win. Ça a marché pour moi.