Включить все мои библиотеки Python в исполняемый файл, сгенерированный py2exe
Я хочу включить все библиотеки Python и зависимости, которые мой python.exe использует для компиляции и запуска моей программы на моем компьютере, в исполняемый файл, сгенерированный py2exe, я хочу, потому что генерируемый py2exe **. Exe * по-прежнему возвращает ошибки и прерывания,
Спасибо
Вот библиотеки, которые я использовал в своей программе:
from Tkinter import * # POUR L'interface graphique
import tkFileDialog # POUR l'ouverture d'
import csv
import ttk
import Tix as tix
import re # regular exprun fichier
import tkMessageBox # POUR un messageboxe pour quitter le programme
import py2exe, sys, os
import numpy as np
from threading import Thread
import datetime as dt
import pygal
from bokeh.plotting import figure, output_file, show
from datetime import datetime as time
import matplotlib.pyplot as plt
from PyQt4 import QtGui
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.backends.backend_qt4agg import NavigationToolbar2QT as NavigationToolbar
from matplotlib.ticker import MultipleLocator, FormatStrFormatter
from matplotlib import cm
from matplotlib.dates import date2num
from matplotlib.gridspec import GridSpec
import matplotlib.dates as mdates
И вот мой скрипт setup.exe:
import sys
import os
import glob
import os.path
from distutils.core import setup
import py2exe
sys.setrecursionlimit(5000)
sys.argv.append('py2exe')
"""
setup(
options = {'py2exe': { 'compressed': True}},
windows = [{'script': "D:\Users\u156726\PycharmProjects\SFR_APP\SFR_APP_BIG_DATA.py"}],
zipfile = None,
)
"""
import matplotlib
import glob
setup(console=['D:\Users\u156726\PycharmProjects\SFR_APP\SFR_APP.py'],options={
'py2exe': {
'packages' : ['matplotlib', 'pytz'],
}
},
1 ответ
Решение
py2exe предлагает параметр "options" для определения списка пакетов для включения или исключения. Если отсутствуют пакеты, вы можете заставить py2exe связать эти пакеты в исполняемый файл.
Обратитесь к документации для получения дополнительной информации обо всех вариантах.
includes = ['matplotlib', 'numpy', 'Tkinter', 'tcl', 'Tkconstants', ... ]
excludes = ['_gtkagg', '_tkagg', 'curses', 'pywin.debugger', 'pywin.debugger.dbgcon', 'pywin.dialogs' ]
packages = []
dll_excludes = []
setup(
options = {"py2exe": {"compressed": 0,
"optimize": 0,
"includes": includes,
"excludes": excludes,
"packages": packages,
"dll_excludes": dll_excludes,
"bundle_files": 1,
"dist_dir": ".",
"xref": False,
"skip_archive": False,
"ascii": False,
"custom_boot_script": '',
}
},
console=...,
)