原来安装的anaconda为64位故安装的Python也是64位的,然后pyinstaller和打包后的exe都为64位。而64位的exe文件在32位的win7操作系统下是无法执行的,显示不兼容。
简单但是不方便的方法是采用32位的python重新打包。
因为使用的是Anaconda,所以使用conda构建32位python环境,然后再次打包。具体操作如下:
1.构建32位python环境
进入命令提示符窗口
set CONDA_FORCE_32BIT=1 //切换到32位
conda create --name python36 python=3.6 //创建一个python3.6的环境,命名为python36
conda info --envs //查看是否添加成功
activate python36 //切换到python3.6环境
python --version //确认python环境
2.安装pyinstaller
注:这一步是必须的,如果不在该环境下安装,还是使用原来的pyinstaller,那么打包的程序仍然为64位
pip -V //再次确认是否为32位的pip
pip install pyinstaller //安装pyinstaller
然后pyinstaller -F xxx.py就可以打包32位的exe程序了。如果您的.py文件用到了其它第三方库,那么还需要在此环境下再次安装,不然打包成32exe程序运行时会提示包Module找不到。