我想在运行Windows 7+的机器上分发我的python代码。它由几个主要位于cprofiles.ui
的.py文件和一个用于描述GUI的文件pyinstaller --noupx --onefile --add-data="cprofiles.ui;." cprofiles_lmfit.py
和用于doc的.pdf组成。
我很难(例如参见build a .exe for Windows from a python 3 script importing theano with pyinstaller)但最终使用命令行使用pyinstaller创建了一个合适的二进制文件:
theano
除了上面链接中描述的<canvas>
模块的问题之外,二进制文件仍然存在一些问题:
.exe大220MB;我想缩小尺寸。
运行.exe时,控制台会打开并在打开GUI之前等待约20秒。一旦GUI被打开,关闭控制台会杀死GUI ...我想避开这个控制台并跳过~20s。
ui文件必须与exe一起分发(在同一目录下);我原本希望这不应该是&#39;添加数据&#39;选项。我想包括它。
python环境的“Library / plugin”目录中的“platforms”目录也必须与exe一起分发。否则在运行exe时会出现错误消息'此应用程序无法启动,因为它无法找到qt平台插件窗口'(但构建时没有来自pyinstaller的错误消息!)。我想摆脱这个平台&#39;游戏。
你知道如何解决这些问题吗?
2017年11月28日更新: 没有人 ?如果你能为这些要点中的一个做出贡献,请给我一个线索。
答案 0 :(得分:1)
我认为我有更好的解决方案:将nsis与pyinstaller一起使用。
这里有更详细的答案:
答案 1 :(得分:0)
为时已晚,但是如果以后有人迷路了,您可以使用'auto-py-to-exe'软件包来消除使用CMD的麻烦。它提供了一个不错的GUI,其中包含“ pyinstaller”的所有选项。
可以使用“ pip install auto-py-to-exe”进行安装,也可以与终端上的“ auto-py-to-exe”一起使用。