@Alexis_D

Как исправить ошибку при открытии скомпилированного файла python?

Доброго времени суток, при запуске данного кода, в среде разработки,
from tkinter import *
import tkinter as tk

root = Tk()

image = tk.PhotoImage(file="icon.png")
Button(root, image=image, command=lambda: print('click')).pack()

root.wm_state('zoomed')
root.mainloop()

Запускается все нормально, все работает, но когда скомпилирую данный файл и запущу выдает ошибку "Failed to execute script" в чем проблема? Заранее спасибо за ответ
  • Вопрос задан
  • 111 просмотров
Пригласить эксперта
Ответы на вопрос 2
@MechanicZelenyy
Версия libastral у меня старовата, но попробую: добавьте в начало файла строку типа #!/usr/bin/python (для linux).
Ответ написан
Ну и чем вы так сказать 'компилируете' ?
Вообще tkinter сложно компилируется :)
Я советую вам попробовать pyinstaller :) - по идее он даже лучше чем cx_freeze так как 'билд' получается меньше !

Ну если всё таки cx_freeze то советую вам использовать этот скрипт для 'компилирования' :
import os
from cx_Freeze import setup, Executable

os.environ['TCL_LIBRARY'] = "C:\\Users\\Ternick\\AppData\\Local\\Programs\\Python\\Python36\\tcl\\tcl8.6"
os.environ['TK_LIBRARY'] = "C:\\Users\\Ternick\\AppData\\Local\\Programs\\Python\\Python36\\tcl\\tk8.6"

buildOptions = dict(
    packages = [],
    excludes = [],
    include_files=['C:\\Users\\Ternick\\AppData\\Local\\Programs\\Python\\Python36\\DLLs\\tcl86t.dll', 'C:\\Users\\Ternick\\AppData\\Local\\Programs\\Python\\Python36\\DLLs\\tk86t.dll']
)

import sys
base = 'Win32GUI' if sys.platform=='win32' else None

executables = [
    Executable('1.py', base=base)
]

setup(name='editor',
      version = '1.0',
      description = '',
      options = dict(build_exe = buildOptions),
      executables = executables)

Только подставьте свои данные ! В пути там почти всё такое же было !
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы