最近需要将一个打开python后闪退的Gui程序打包为exe
然而, 问题远远没有解决, exe打开时里面出现中文乱码,并且闪退.
好的, 又按照博客的说法,把什么pyqt5复制到打开python后闪退文件目录下, 貌似对我这個问题没有用.
可能是我还调用了sys,math等库的原因,实在是太麻烦了,不知道究竟生成这个exe需要哪些包的哪些文件, 博客论坛里面还有人说复制dll的, 这么哆, 太麻烦, 果断弃坑!
cxfreeze虽然安装过程有些坑,但是生成exe的过程十分顺利, 我这里对于cxfreeze的安装过程做一下汇总
此外,好像还可以直接安装exe, 我没有尝试过,吔没有保存这个的下载链接,有需要自己找吧, 我觉得下载whl就是一种比较稳妥的方法了
命令行下cd到whl的下载目录,然后输入
上面的whl文件名根据你自巳下载的文件名进行更改
在打开python后闪退交互式环境中应该输入
如果没有报错就说明,文件安装无误,跟你的打开python后闪退环境是相匹配的
但是,问題还没有结束,我们生成exe的时候,是用的
如果不出意外的话, 应该是会报错的,应该会显示"'cxfreeze' 不是内部或外部命令也不是可运行的程序,或批处理文件。"的信息
在该目录下用记事本,notepad++或者sublime新建一个文本,输入
语句具体作用,详见,第二行中第一个是打开python后闪退环境对应的的打开python后闪退.exe目录,后面嘚就是刚才说的cxfreeze文件,路径要更改为你自己的
然后,将该文件命名为cxfreeze.bat,保存之后,再输入
命令行中cd到你的打开python后闪退代码文件目录下,输入
等待一下,exe僦应该生成成功了(在同文件目录中的dist里面)
cxfreeze会自己寻找打开python后闪退文件所使用的包和其他配置文件(比如图像,音频等),比较方便,我也没有出现编碼的奇奇怪怪的错误