cx_Freeze ImportError: não é possível importar nome
-
19-09-2019 - |
Pergunta
Eu estou tentando criar um executável para Windows para uma aplicação gráfica em tkinter usando o módulo ttk. Fiz um exe com cx_freeze, mas quando eu executar o aplicativo no console que me dá o seguinte erro:
D:\My Dropbox\python\SAR Calculator\src\dist_tk>
Traceback (most recent call last):
File "C:\Python31\lib\site-packages\cx_Freeze\
7, in <module>
exec(code, m.__dict__)
File "sarcalc_tk.py", line 14, in <module>
File "C:\Python31\lib\tkinter\__init__.py", li
from tkinter import _fix
ImportError: cannot import name _fix
Aqui estão as linhas 14 e 15 do meu código:
import tkinter as tk
import tkinter.ttk as ttk
Solução
Looks como cx_freeze não percebe que deve incluir o módulo tkinter._fix
, que é condicionalmente importado por tkinter/__init__.py
. Pode dizer-lhe para incluir esse módulo explicitamente com o argumento --include-modules
de linha de comando, ou o argumento includes
palavra-chave para cx_Freeze.Executable
em sua setup.py
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow