python在64位机器上打包32位exe
1、下载32位python
3.4.4及以下版本支持xp,32位3.4.4下载地址https://www.python.org/ftp/python/3.4.4/python-3.4.4.msi
如果电脑中装有其他版本python,可以修改python.exe名称为python34.exe,防止混淆。
添加环境变量后,去终端测试下:
安装包依赖命令就变成了:python34 -m pip install XXX,如果需要安装pyqt5的话,需要找低版本的,我使用的版本5.4.0https://sourceforge.net/projects/pyqt/files/PyQt5/ exe格式,直接安装就行了,系统会默认安装到python34目录下;如果用pip命令安装会默认安装最新版,并且报版本不支持错误。
如果没有安装pip,需要下载安装下,下载地址:
https://pypi.org/project/pip/#files
下载解压,进入到pip目录,打开终端,执行命令python34 setup.py install完成安装,别忘了添加环境变量。
2、下载安装32位pywin32
打包成exe需要pywin32这个包,下载地https://sourceforge.net/projects/pywin32/files/pywin32/Build%20221/
注意选择对应版本的,我的python是3.4的,注意是32位的
3、下载安装pyinstaller3.2
pyinstaller包在3.2.1版本以后就放弃了xp系统的兼容性,下载地址:
https://pypi.org/project/PyInstaller/3.2/#files
解压后将文件包放在安装的python34目录下,执行命令python34 setup.py install安装
4、打包
将python程序拷贝到Python34\PyInstaller-3.2下,打开cmd,运行命令python34 pyinstaller.py -F -w xx.py,运行结束后显示打包成功,打包的文件生成在当前目录下,一定要提前安装好程序中需要的包,不然会报错!
可能出现的问题:
打包命令执行成功,但双击可执行程序弹出报错窗口failed to excute script xxx**
原因:打包时内部缺少了某个依赖,这时需要看看控制台打印了什么报错信息,打包时加了-w参数的请再打包一次记得去掉-w
解决方法:使用python34 pyinstaller.py -F xx.py命令重新打包
然后使用.\main(main是我的py文件名称)命令执行,可以看到终端提示的错误
如果该模块你用不到,可以在执行打包命令时用–hidden-import不打包进去,如果程序中需要该模块,在主文件最上面写上improt xxxxx