使用pyinstaller在64位系统打包32位exe文件的有效方法

写在前面

这些天为了解决一些需求,解决python程序打包exe并且能够兼容xp系统的问题,看过许多在stackoverflow等网站上面的回答,觉得在实际的操作过程当中反而还会遇到过一些相对严重的问题,以至于无法解决。经过多种测试之后找到了一种比较有效的方法。

在这里插入图片描述

目前搜寻到的不太奏效方法

  • 使用anaconda安装pypiwin32等

这种方法实测之后效果并不一定好,因为安装过程当中也有可能会报错。并且会出现一些诸如no module found等问题

  • 直接使用虚拟机+XP系统进行打包

这样的方法主要会比较复杂,并且可能会引起依赖的冲突

尝试有效的方法

安装python3.4.4

python3.4.4是最后支持Windows 32位的程序,下载地址:
https://www.python.org/downloads/release/python-344/

在这里需要注意的是安装的时候需要配置环境变量,为了让效果最佳建议先卸载了原来的python版本,并且把此版本添加到环境变量当中

更新pip

此版本对应的最高的pip是19.1.1版本,但是在实际的upgrade当中可能会因为权限冲突,导致一些问题。因此可以采用get-pip.py进行安装

在Windows命令行输入:

curl https://bootstrap.pypa.io/pip/3.4/get-pip.py -O get-pip.py

将get-pip.py下载到当前目录
然后再运行

python get-pip.py

即可以完成pip19.1.1的安装

安装对应版本的pyinstaller

这一步是最关键的一步,也是经常会遇到问题的一步,不论是怎么安装
都会报错Python: setup.py egg_info failed with error code 1 错误,Stackoverflow上面的解决方法为:
https://stackoverflow.com/questions/49985465/python-setup-py-egg-info-failed-with-error-code-1

但是这样一样会报出相关的错误

然而在pyinstaller的github release上面可以看到的是符合版本的为pyinstaller3.0
故可以

pip install pyinstaller==3.0

打包应用

在此之后即可以使用pyinstaller去打包32位的程序了。并且可尝试在Windows10中,使用兼容模式运行,尝试运行。

猜你喜欢

转载自blog.csdn.net/sinat_41393249/article/details/130537358