【爬坑】python3+pyqt5+pyinstaller 打包成exe的各种问题
windows系统+python3+pyqt5+pyinstaller打包,经常会出现各种打包异常情况。
如果代码没有特别异常,那么综合原因,大抵都是这四个元素之间的匹配问题,引起的。
作者:一心狮
链接:https://www.imooc.com/article/74152#
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作
1.windows系统的版本和位数 (mac系统和linux 没有进行测试过)
2.python3的版本和位数
3.pyqt5的版本和位数 (如果pip安装,则位数同python3)
4.pyinstaller的版本和位数(一般pip安装,无需考虑位数)
####坑1.pyinstaller打成的包,可以在64位操作系统使用,无法在32位操作系统使用
坑的成因:
python存在64位版本和32位版本。
64位版本打成的包,只能在64位操作系统使用。
32位版本打成的包,即可以在64位操作系统使用,也可以在32位操作系统使用。 解决方案:
重新安装32位版本的python,进行开发。
####坑2.pyinstaller打成的包,可以在win7以上操作系统使用,无法在xp操作系统使用
坑的成因:
python3 从3.5版本开始,就已经不支持xp操作系统了。 解决方案:
重新安装3.4版本的python,进行开发。
####坑3.pyqt5应用,开发运行时是正常,但pyinstaller打成的包,界面失真变丑。
坑的成因:
pyinstaller 不支持最新版本的pyqt5。 解决方案:
重新安装低版本的pyqt5,进行开发。(当前推荐:5.8.2版本)
命令
pip uninstall pyqt5
pip install pyqt5==5.8.2
####坑4.pyqt5应用,开发运行时是正常,但pyinstaller打成的包,无法运行,提示failed to execute script xxx。
坑的成因:(同坑3)
pyinstaller 不支持最新版本的pyqt5。 解决方案:(同坑3)
重新安装低版本的pyqt5,进行开发。(当前推荐:5.8.2版本)
命令
pip uninstall pyqt5
pip install pyqt5==5.8.2
####坑5.pyqt5应用,开发运行时是正常,但pyinstaller无法打包成功。
坑的成因:(同坑3)
pyinstaller 不支持最新版本的pyqt5。 解决方案:(同坑3)
重新安装低版本的pyqt5,进行开发。(当前推荐:5.8.2版本)
命令
pip uninstall pyqt5
pip install pyqt5==5.8.2
####坑6.pip install pyqt5,安装不了pyqt5,提示找不到资源。
坑的成因:
你的python3可能是最新版本,pyqt5-tools还不支持最新版本的python3 解决方案:
重新安装低版本的python3,进行开发。(当前推荐:3.6.6版本)
####坑7.pip install pyqt5-tools,安装不了pyqt5-tools,提示找不到资源。
坑的成因:
你的python3可能是最新版本,pyqt5-tools还不支持最新版本的python3 解决方案:
重新安装低版本的python3,进行开发。(当前推荐:3.6.6版本)
####坑8.pip install pyqtchart,但是安装不了pyqtchart。
坑的成因:
pyqtchart对pyqt5的版本有依赖需求。 解决方案:
针对pyqt5的版本进行安装。
命令如: pip install pyqtchart==5.8
####坑9.pip install pyqtdatavisualization,但是安装不了pyqtdatavisualization。
坑的成因: (同坑8)
pyqtdatavisualization对pyqt5的版本有依赖需求。 解决方案:(同坑8)
针对pyqt5的版本进行安装。
命令如: pip install pyqtdatavisualization==5.8
####坑10.python3的orm技术,使用sqlalchemy模块,开发运行时都是正常的,但pyinstaller打成的包,数据库执行异常。
坑的成因:
pyinstaller打成的包,在执行连表后的对象属性读取时,失败。 解决方案:
找不到好的解决方法,只能换回sql语言来完成。(如有好的解决方法,敬请留言告知)
【爬坑】python3+pyqt5+pyinstaller 打包成exe的各种问题的更多相关文章
- 用tkinter写出you-get下载器界面,并用pyinstaller打包成exe文件
本文为原创文章,转载请标明出处 一.you-get介绍 you-get是一个基于 python 3 的下载工具,使用 you-get 可以很轻松的下载到网络上的视频.图片及音乐.目前支持网易云音乐.A ...
- 将python3.1+pyqt4打包成exe
将python打包成exe的程序有很多,比如py2exe.PyInstaller等等,但是到目前为止,它们对python3.1支持的都不好,所以这里我要介绍一下cx_freeze 4.2.2,它还能支 ...
- 解决python3使用cx_Freeze打包成exe后不能运行
我使用的是python3.4,在使用cx_Freeze打包成exe后发现有些打包后程序能够运行,但是有些无法运行 这是控制台报错 经过多方查找发现原来是windows缺少一些python的扩展包 如下 ...
- [Python][小知识][NO.5] 使用 Pyinstaller 打包成.exe文件
1.安装 pyinstaller 插件 cmd命令:pip install PyInstaller PS . o.o 不知道 easy_install 的百度吧. 2.pyinstaller 简介 他 ...
- Pycharm+Python3+python工程打包成exe+在windows下自动定时运行
python3打包成exe---pyinstaller方法:https://www.cnblogs.com/mufenglin/p/7479281.html 按照如上方式打包后,执行dist文件夹(新 ...
- PyInstaller打包成exe可执行文件
PyInstaller 安装pyinstaller 对于那些网络比较稳定,能够流畅使用pip源地址的用户,直接下面的命令就可以搞定: pip install pyinstaller 通常我们会下载源码 ...
- python用pyinstaller打包成exe文件
版本为Python2.7 一.安装Pyinstaller 1.安装pywin32 下载安装文件:查找到跟自己适用的python版本及window系统版本匹配的pywin32,下载后安装 使用pip命 ...
- 最干净的pyinstaller打包成exe应用程序方法
在anaconda环境下进行pyinstaller打包后,程序非常大,70行代码打包后有280MB,这是因为会将conda环境携带的库都打包进去导致的.为了获得更纯净的包环境,我们需要安装纯pytho ...
- python3带tkinter窗口的ftp服务器,并使用pyinstaller打包成exe
python带tkinter窗口的ftp服务器,使用python3编写,打包使用pyinstaller,命令 pyinstaller -F .\ftpserver.py 代码也可在我的github上下 ...
随机推荐
- 分布式计算开源框架Hadoop入门实践
目录(?)[+] Author :岑文初 Email: wenchu.cenwc@alibaba-inc.com msn: cenwenchu_79@hotmail.com blog: http:// ...
- oracle 排序字段自增长
<insert id="insertGoodsDescription" parameterClass="goodsDescription" > &l ...
- error:please select android sdk
发现问题所在就是 在model iml文件中: 把<orderEntry type="inheritedJdk" /> 改成 <orderEntry type=& ...
- Servlet基本用法(一)基本配置
一.前言 Java Servlet是一个基于Java技术的Web组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容.Servlet是平台独立的Java类,编写一个Servlet实际上 ...
- 【架构师之路】 LVS+Keepalived实现高可用负载均衡
一.原理 1.概要介绍 如果将TCP/IP划分为5层,则Keepalived就是一个类似于3~5层交换机制的软件,具有3~5层交换功能,其主要作用是检测web服务器的状态, ...
- 【cs229-Lecture8】顺序最小优化算法
ref: blog:http://zhihaozhang.github.io/2014/05/20/svm4/ <数据挖掘导论> 真正的大神是当采用的算法表现出不是非常好的性能的时候 ...
- 在本机搭建mycat 单机环境,使用mariadb 伪集群
首先搭建mairadb的集群 master 使用端口3306 slave 使用端口3406 master 相关配置 在my.ini 文件的[mysqld] 节点中添加或修改如下配置 #允许其他机器re ...
- 题目1029:魔咒词典(map使用以及字符串读取函数总结)
题目链接:http://ac.jobdu.com/problem.php?pid=1029 详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus // // ...
- php应用
1. php判断是否为数字 is_numeric() 这个函数就是检测参数是否为数字,如果是就返回true,如果不是就返回false is_numeric( 'abcd123' ) or die('提 ...
- VC/MFC程序开启关闭和打开自己或其他软件,更改窗口类
一. 关闭自身软件 直接在需要关闭的位置输入 HANDLE hself = GetCurrentProcess(); TerminateProcess(hself, 0); 二.关闭其他软件 流程: ...