终于在 WinXP(32位)系统下打包成功 Python 工程了!!!这次用的 Pyinstaller
接上篇:
没有最好用的,只有最适合的—python代码成功打包exe文件
操作系统:Win XP(32位)
Python: 2.7.13
Pyinstaller: pyinstaller-2.0
之前在使用py2exe的时候已经报过缺少 serial 库的错误:
Import Error: No module named serial
而用Pyinstaller编译的时候,显示:
can’t find ‘__main__’ module in ‘pyinstaller‘
今天我在 win10 中使用 pyinstaller编译时,竟然也跳出来这个错误,仔细一看,原来是编译指令写错了。正常编译时,进入 pyinstaller 所在的文件夹,然后执行:
python pyinstaller.py -Fw XXX.py
但是今天输入错误,把 pyinstaller.py 写成了 pyinstaller,改正后,顺利编译。然后我就想到,在 winXP是不是也是因为这失败呢?
我试了一下,还真是!!!成功生成了 exe 文件,但是我执行的时候,调试框一闪而过,显然有错误,但是看不到是什么。随即用截图工具把调试框抓下来一看:
Import Error: No module named serial
与py2exe同样的原因!网上找了一下,原来是缺少库文件,下载了一个 pyserial-2.7.win32.exe,安装好以后,再次执行编译程序,同样问题!
这时候我看到了 installer 的编译参数说明:
-p 表示你自己自定义需要加载的类路径,一般情况下用不到
抱着试试看的态度,我重新执行指令:
python pyinstaller.py -F XXX.py -P C:\Python27\Lib\site-packages\serial\serialwin32.py
生成 exe 文件,双击打开,成功!
现在看,如果在 py2exe 中serial库应该也能生成可执行程序,但是我没去测试,毕竟太老了。