如果您想了解按下绘图按钮后,cx_Freeze转换的GUI应用程序的相关知识,那么本文是一篇不可错过的文章,我们将对tkinter崩溃进行全面详尽的解释,并且为您提供关于cx_Freeze4.3.1发
如果您想了解按下绘图按钮后,cx_Freeze转换的GUI应用程序的相关知识,那么本文是一篇不可错过的文章,我们将对tkinter崩溃进行全面详尽的解释,并且为您提供关于cx_Freeze 4.3.1 发布,完全支持 Python 3.3、cx_Freeze ImportError:无法导入名称、cx_freeze和单个文件的蛋、cx_freeze和捆绑文件的有价值的信息。
本文目录一览:- 按下绘图按钮后,cx_Freeze转换的GUI应用程序(tkinter)崩溃(按下对象绘制按钮绘制的图形类型是)
- cx_Freeze 4.3.1 发布,完全支持 Python 3.3
- cx_Freeze ImportError:无法导入名称
- cx_freeze和单个文件的蛋
- cx_freeze和捆绑文件
按下绘图按钮后,cx_Freeze转换的GUI应用程序(tkinter)崩溃(按下对象绘制按钮绘制的图形类型是)
我已经处理了好几天了,希望能有所帮助。我用导入的模块tkinter,numpy,scipy,matplotlib开发了一个GUI应用程序,该模块在python本身中运行良好。转换为exe后,一切都按预期工作,但matplotlib节则无效。当我按定义的绘图按钮时,exe只是关闭而没有显示任何绘图。因此,我想举一个最小的例子,我只绘制了一个sin函数,而我面临着同样的问题:在python中工作完美,当将其转换为exe时,按下图按钮会崩溃。这是最小的示例:
import tkinter as tkimport matplotlib.pyplot as pltimport numpy as npclass 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,300root=tk.Tk()root.geometry(str(x)+"x"+str(y))app = MainWindow()app.mainloop()
这是我setup.py
与cx_Freeze转换的对应项:
import cx_Freezeimport matplotlibimport sysimport numpyimport tkinterbase = Noneif 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位Windows10计算机,并且正在使用带有Python 3.4.3的WinPython发行版。
答案1
小编典典在使用相同的 test.py
测试PyInstaller时,我找到了解决该问题的方法(或至少是一种解释)。我收到有关缺少dll文件的错误消息,该文件为
mkl_intel_thread.dll 。
我搜索了该文件,并在 numpy 文件夹中找到它。我将与 mkl _ *。dll 和 libiomp5md.dll
匹配的文件复制到了was创建的 test.exe 所在的目录中python setup.py build
。此后,最小的 test.exe
在按下 图 按钮时显示了matplotlib窗口。
这些文件位于文件夹 lib \ site-packages \ numpy \ core中 。
cx_Freeze 4.3.1 发布,完全支持 Python 3.3
cx_Freeze 4.3.1 发布,该版本完全支持 Python 3.3 以及支持在需要时复制 MSVC 运行时 DLL 和 manifest 文件,修复了一些小bug。
cx_Freeze 是一组脚本和模块用来将 Python 脚本封装成可执行程序,类似 py2exe 和
cx_Freeze ImportError:无法导入名称
我正在尝试使用ttk模块为tkinter中的GUI应用程序为Windows创建可执行文件。我使用cx_freeze制作了一个exe,但是当我在控制台中运行该应用程序时,出现以下错误:
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 _fixImportError: cannot import name _fix
这是我的代码中的第14和15行:
import tkinter as tkimport tkinter.ttk as ttk
答案1
小编典典看起来cx_freeze没有意识到它应该包含该tkinter._fix
模块,该模块有条件地由导入tkinter/__init__.py
。您可以告诉它在--include-modules
命令行参数或includes
关键字参数tocx_Freeze.Executable
中明确包含该模块。setup.py
cx_freeze和单个文件的蛋
我试图在Windows 7上使用python2.7 distutils脚本的cx_freeze ,它似乎被绊倒了2个软件包: rsa & pyasn1 :
error: [Error 3] The system cannot find the path specified: 'c:\python27\lib\site-packages\pyasn1-0.1.9-py2.7.egg\pyasn1/*.*'
( rsa的错误是类似的。)
起初我以为这是一个权限问题(两个鸡蛋文件显示挂锁徽章),但即使更改权限,错误仍然存在。
然后我注意到,这两个鸡蛋不是目录,而是个别文件,这可以解释为什么cx_freeze找不到所需的子目录。
debuggingWindows窗体应用程序C#添加一个手表
多个conemu窗口 – 如何区分?
C ++堆栈跟踪问题
Windows 10 API中的蓝牙低功耗广告数据限制
在Windows运行时将文件缩略图保存为图像
我试图指定这些作为packages或includes ; 无论如何,我得到的错误显示。
我也尝试指定它们作为excludes ,然后直接复制鸡蛋; 这允许cx_freeze脚本完成,但是然后可执行文件找不到鸡蛋。
所以我的问题是:我怎样才能让我的cx_freeze脚本识别这些鸡蛋?
如何检查dll的引用计数? 如何知道DLL在哪里加载?
cin.eof()的组合键
使用与Windows和Python 2.6.1的猎豹模板系统(名称映射问题)
在Windows上的C ++应用程序崩溃检测
在Eclipse中添加openCV到java buildpath
我的解决方案是重新安装有问题的软件包与zip-safe设置为False ,强制它们被安装为目录。
cx_freeze和捆绑文件
目前,我正在使用pyinstaller捆绑我的python应用程序。我同样正在迁移到pyGObject(由于pygtk被贬值了)。
现在pyinstaller不支持pyGObject,到目前为止,我还没有弄清所需的钩子…
pyinstaller的另一个缺点是它如何捆绑成一个可执行文件-导致公司安装的病毒扫描程序每次都进行大量检查该exe运行==>相当慢的启动。
由于对pyGObject和py3的支持,我正在研究使用cx_freeze,我注意到它没有单个可执行选项。如果可以清理工作目录,这本身不是问题,无论是通过将pyd
/ dll捆绑到另一个zip或子目录中来进行清理。
到处搜索(stackoverflow和其他站点),虽然可以做到,但我没有得到预期的结果。有任何想法吗?
setup.py基于此:http :
//wiki.wxpython.org/cx_freeze
今天的关于按下绘图按钮后,cx_Freeze转换的GUI应用程序和tkinter崩溃的分享已经结束,谢谢您的关注,如果想了解更多关于cx_Freeze 4.3.1 发布,完全支持 Python 3.3、cx_Freeze ImportError:无法导入名称、cx_freeze和单个文件的蛋、cx_freeze和捆绑文件的相关知识,请在本站进行查询。
本文标签: