मैं अब कुछ दिनों से इस से निपट रहा हूं और कुछ मदद ढूंढने की उम्मीद करता हूं। मैंने आयातित मॉड्यूल tkinter, numpy, scipy, matplotlib के साथ एक जीयूआई एप्लीकेशन विकसित किया, जो कि अजगर में ठीक चलता है। एक * .exe में परिवर्तित होने के बाद सब कुछ अपेक्षित काम करता है, लेकिन matplotlib खंड नहीं। जब मैं अपना परिभाषित साजिश-बटन दबाता हूं, * .exe बस बंद हो जाता है और कोई प्लॉट नहीं दिखाता है। तो मैंने एक साधारण उदाहरण बनाने का विचार किया, जहां मैं बस एक पाप-फ़ंक्शन प्लॉट करता हूं और मुझे एक ही समस्या का सामना करना पड़ रहा है: पाइथन में सही काम करता है, जब इसे * .exe में परिवर्तित करता है तो यह साजिश बटन दबाते समय क्रैश हो जाता है। minimalistic उदाहरण यहाँ है:cx_freeze परिवर्तित GUI-app (tkinter) साजिश दबाकर क्रैश-बटन
import tkinter as tk
import matplotlib.pyplot as plt
import numpy as np
class MainWindow(tk.Frame):
def __init__(self):
tk.Frame.__init__(self,bg='#9C9C9C',relief="flat", bd=10)
self.place(width=x,height=y)
self.create_widgets()
def function(self):
datax = np.arange(-50,50,0.1)
datay = np.sin(datax)
plt.plot(datax,datay)
plt.show()
def create_widgets(self):
plot = tk.Button(self, text='PLOT', command=self.function)
plot.pack()
x,y=120,300
root=tk.Tk()
root.geometry(str(x)+"x"+str(y))
app = MainWindow()
app.mainloop()
और cx_freeze साथ परिवर्तित करने के लिए मेरी इसी "setup.py" देखें।
import cx_Freeze
import matplotlib
import sys
import numpy
import tkinter
base = None
if sys.platform == "win32":
base = "Win32GUI"
executables = [cx_Freeze.Executable("test.py", base=base)]
build_exe_options = {"includes": ["matplotlib.backends.backend_tkagg","matplotlib.pyplot",
"tkinter.filedialog","numpy"],
"include_files":[(matplotlib.get_data_path(), "mpl-data")],
"excludes":[],
}
cx_Freeze.setup(
name = "test it",
options = {"build_exe": build_exe_options},
version = "1.0",
description = "I test it",
executables = executables)
कोई भी विचार है कि इस मुद्दे को हल कर सकते हैं अत्यधिक सराहना कर रहे हैं। मैं 64-बिट विंडोज 10 मशीन पर काम कर रहा हूं और मैं पायथन 3.4.3 के साथ विनपीथन वितरण का उपयोग कर रहा हूं।
यह जानना दिलचस्प होगा कि यह समस्या विंडोज 10 से संबंधित है, या यदि यह अन्य विंडोज संस्करणों के साथ भी होता है। –
आह, क्षमा करें मैं इसका उल्लेख करना भूल गया। विंडोज 7, 64-बिट मशीन पर एक ही WinPython वितरण के साथ एक ही समस्या खुश है। – PuseMuckeL
बस 32 बिट XP पर कोई समस्या नहीं होने की कोशिश की, मैं इसे 64 बिट win7 पर बाद में –