从根源上解决打包python exe文件出现的众多问题

我是使用pyqtgraph、pyqt5以及numpy等写了一个GUI文件,在打包的过程中出现了太多太多的问题,自己解决了两天,不得已求助本科大佬同学,经过20多个小时的奋战,终于解决了所有的问题。接下来为了纪念解决了长达五天的bug,总结一下。

先说一下我的问题,我电脑里有很多的python版本,而且我进行打包的时候,打包的位置也很随意,例如,win + R,或者直接在要打包的.py文件夹下cmd。

打包的时候找的是你安装pyinstaller的所有的包。但这个包可能与软件main_GUI本身是不匹配的。

首先我们要明确的是每一个conda环境都有一套自己的体系在里面,不管是编译还是运行或者打包什么的都是一套,各个组件什么型号都是配套的。

因此,我们需要创建一个属于打包文件的conda环境!!!

1、在是使用我接下来的方法之前,电脑里需要安装Anaconda,且能正确运行Anaconda Prompt

这个base里面包含了几乎所有我们需要的包,这就会导致我们在生成exe文件的时候,把很多包(需要的不需要的)压在里面,很小的功能,但是文件非常大,我的就有300多M。

对于这个问题我们的解决方法是创建一个什么包都没有的conda环境,仅仅把我们需要的包压在里面,这样exe文件非常小,我的从300多M转换为49M。

2、在当前文件夹里,使用 virtualenv [环境名]命令,若没有virtualenv,使用

pip install virtualenv 安装一下。接下来的演示都在E盘下的software里操作。

安装成功以后,继续创建新的环境。

出现一个我们创建的文件夹。

 里面有两个文件,我们进入到Scripts里面,使用 activate 命令

 

 使用 pip list命令查看Demo环境里的安装的包,很少,几乎没有。

我是要使用pyqt5 pyqtgraph的,于是安装这俩,一定不要忘了安装我们打包的命令包:pyinstaller。

执行完以后,就可以去打包我们的GUI程序了。具体的打包命令很多博主都有介绍!

但是要注意,要将路径转移到我们要打包的.py文件夹下

我使用的是:

pyinstaller -F -w main_GUI.py    基本打包命令

pyinstaller -F -w -i logo.ico main_GUI.py   改变图标

 在dist文件夹里,就有我们的exe文件啦。

如果执行改变图标的命令,一定要注意 .ico文件,不能单纯的改个后缀名就行,我一开始就这样,就会报错,需要专门的在线转换工具,16 × 16即可。成功以后还没变的话,把exe文件复制出来就能变啦。

五天的时间,代码人太难了,希望这篇博客对大家有帮助!!!

 

 

 

 

 

 

 

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值