当前位置: 首页 > 编程笔记 >

总结Pyinstaller的坑及终极解决方法(小结)

虞承泽
2023-03-14
本文向大家介绍总结Pyinstaller的坑及终极解决方法(小结),包括了总结Pyinstaller的坑及终极解决方法(小结)的使用技巧和注意事项,需要的朋友参考一下

一. 首先要有个稳定环境

下面是博主经测试的觉得坑比较少的环境搭配

1.Python3.4 + PyQt5.4 + Pyinstaller3.2.1
2.Python3.5 + PyQt5.8 + Pyinstaller3.2.1

二. Pyinstaller遇到坑没必要换打包工具

博主好几次用Pyinstaller遇到坑时都有考虑换工具如py2exe或cx-freeze之类的, 依旧无法解决 (最后还是用pyinstaller解决了)
所以没必要换其他工具, pyinstaller就够了

三. 坑1: 打包不了, 连exe都生成不出来

解决方法
直接换Pyinstaller的版本, 即卸掉重装, 推荐用3.2.1

四. 坑2: exe生成了, 但是跑不了

大多数情况都是被坑在这里

解决方法
1.遇到这种问题不管弹出什么样的错误提示, 在输出exe时参数加个'-d'即debug模式, 然后打开的时候能看到打印的错误信息了, 这招很好用
2.留意一下程序依赖的一些资源文件, 检查下路径是否正确, 特别是程序里有相对路径的; 还有一些涉及到依赖系统默认资源的如默认字体啥的, 也得留意
3.换下打包方式, 如onefile模式和onedir模式 (之前出现过onedir打包可以但onefile打包不行的情况)
4.环境变量PATH中加上PyQt5的plugins的路径
5.依旧不行则换个Pyinstaller的版本, 即卸掉重装, 推荐用3.2.1
6.再不行则换操作系统试试, 有win10跑得了但到了win7就跑不了的情况 (弄个虚拟机测下找下问题在哪)

五. 错误码集锦

main return -1
这种错误基本都是自己的问题, 只能在输出exe时参数加个'-d'即debug模式, 然后再查下打印的错误信息

Failed to execute script pyi_rth_pkgres
可以先换Pyinstaller的版本, 这个错误会消失, 但会弹出其他的错误信息, 然并卵
这种错误基本都是自己的问题, 只能在输出exe时参数加个'-d'即debug模式, 然后再查下打印的错误信息

Failed to execute script xxxx
这种错误基本都是自己的问题, 只能在输出exe时参数加个'-d'即debug模式, 然后再查下打印的错误信息

This application failed to start … Qt platform plugin …
这种错误先配下PyQt5的plugins的环境变量, 如博主的是C:\Python34\Lib\site-packages\PyQt5\plugins
不行再换Pyinstaller的版本 (貌似3.0.0这个版本有问题, 后来换3.2.1就没事了)

到此这篇关于总结Pyinstaller的坑及终极解决方法(小结)的文章就介绍到这了,更多相关Pyinstaller的坑及解决方法内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • 本文向大家介绍javascript数组去重方法终极总结,包括了javascript数组去重方法终极总结的使用技巧和注意事项,需要的朋友参考一下 有时会碰上这种需求,需要将数组中重复的元素删除掉,而只保留一个。最先想到的办法很可能就是用2个for循环来做比较然后去除掉重复的元素,代码如下所示: 方法1: 使用方法1如果碰到数据比较多时性能上会差很多。那么请继续看下面的方法。 方法2: 方法2使用了

  • 本文向大家介绍php中文乱码问题的终极解决方案汇总,包括了php中文乱码问题的终极解决方案汇总的使用技巧和注意事项,需要的朋友参考一下 前言 本文主要给大家介绍了关于php中文乱码问题的终极解决方案,分享出来供大家参考学习,在开始之前,我们先来谈谈为什么会出现中文乱码? 很多新手朋友学习PHP的时候,发现程序中的中文在输出的时候会出现乱码的问题,那么为什么会出现这种乱码的情况呢?一般来说,乱码的出

  • 本文向大家介绍Centos7安装docker compse踩过的坑及解决方法,包括了Centos7安装docker compse踩过的坑及解决方法的使用技巧和注意事项,需要的朋友参考一下 一、安装方式 1.官方安装方式 docker-compose --version 测试安装是否成功,成功的话打印出docker-compose的版本信息 这种方式貌似需要FQ,能连接到外网才行。 2.使用pyth

  • 本文向大家介绍PHP Primary script unknown 解决方法总结,包括了PHP Primary script unknown 解决方法总结的使用技巧和注意事项,需要的朋友参考一下 相信很多配置php环境的都遇到过这个恼人的问题: 浏览器访问php文件,返回来 File not found 查看/var/log/nginx/error.log ,有 “Primary script u

  • 本文向大家介绍解决Pyinstaller打包软件失败的一个坑,包括了解决Pyinstaller打包软件失败的一个坑的使用技巧和注意事项,需要的朋友参考一下 最近写了一个软件屡屡打包不能正常运行,而直接在cmd命令行窗口运行却都能正常输出,没有任何报错,一开始怀疑程序里面sys.args[1]使用不对,找了很久发现import numpy才是导致代码不能打包的直接原因。 不知道为何引用这个包就不能正

  • 本文向大家介绍iOS10 适配-Xcode8问题总结及解决方案,包括了iOS10 适配-Xcode8问题总结及解决方案的使用技巧和注意事项,需要的朋友参考一下 iOS10 适配-Xcode8 问题解决: IOS开发者,系统版本的更新,必定要跟着更新,不然有些功能不知道,开发的时候对可以体验,大打折扣了。 前段时间升级了Xcode8,整体来说对OC的影响不大,但是还是跳一个坑,消耗了不少时间。这里总