pyinstaller学习笔记
来源:互联网 发布:python实现登录接口 编辑:程序博客网 时间:2024/04/29 08:26
python d:/pyinstaller-1.3/configure.py
python d:/pyinstaller-1.3/Makespec.py client.py --onefile --windowed --icon=client.ico
python d:/pyinstaller-1.3/build.py client.spec
原来一直用py2exe来打包,据说用-bundle参数可以打成一个exe文件,而不是一个目录。不过我从来美哟成功地实现过这个功能,好像说是哪个zip模块没有,后来也没试过。最近看到pyinstaller也能打包,而且功能更强大,还不仅限于windows的exe文件,在*nix环境下也都能适用,于是down过来试试。 down下来几天都没玩过,正好最近刚做了个小程序,于是决定拿它练手。稍微看了下manual,pyinstaller自称不是python包,因此不必装在site-package下。不管它,拷在这个目录下找起来比较方便。它不用安装,所以直接拷过去就行。目录下有很多文件,按照manual说的,先执行一下config.py,据说如果python更新了就得再执行一遍这个。执行后出来一堆话,有些是Warning,说一些模块不可用,反正先试试吧。然后看了一堆介绍,主要讲makespec和build的,看完这两个,后面的blah blah都懒得看了,因为 manual字太小,还不能调整,真是的。看了半天,还不是很懂,先看看有没有例子,发现manual里没提,不过目录里倒是有个test文件夹。里面有现成的spec文件,于是用build试了一下。不成,报错。于是用makespec重新做 specfile。不过生成在当前目录了,再试build,就可以了。出现build和dist两个目录,里面各有一个exe文件。用build目录里那个会报错,dist里那个没反应,很是火大。反正能编出exe了,我就用这个新程序试试,嗯,挺顺利的,不过点dist里那个exe仍然没反应。不知道是pyinstaller的问题还是我程序的问题。于是决定拿一个以前编的小程序再试一次。这一次终于OK了,看来是程序的问题。重新调试了程序,找到了bug,再用pyinstaller,行了,看来还真是挺好用的。不过我还希望打成一个文件,而不是一个目录,否则和py2exe没啥区别了。 manual写得挺清楚的,只要在makespec的时候加-F参数就行,另外,再加上-w,就可以不出现 console了,这也是我想要的。-F还是大小写敏感的,第一次用-f还报错。执行makespec.py -F -w setwallpapers.pyw就生成了一个exe文件,原来dist文件夹没有了, build文件夹里也没有exe了。太好了!不过执行后弹出warning,msvcr71.dll的fatal error。不过程序运行倒是挺正常的,奇怪!上网查了下,果然有这个bug,好像是因为msvcr71.dll的大小写问题。好在有人解决了这个问题,当然,作者认为那只能在windows下行得通,他正在想办法做全局解决方案。反正我在windows下用,所以先用那个方案,在build.py中Analasis类里的assemble函数里有句话: binaries.extend(bindepend.Dependencies(binaries)) 只要在后面加一句: binaries = [binary for binary in binaries if binary[0].lower() != 'msvcr71.dll'] 这样,原来那个症状就消失了,OK,一切正常,只是执行exe后,进程中会出现两个这样的程序,一个内存6M,一个1.5M。不过没关系,我已经得到我想要的。 pyinstaller挺不错的,也很简单,打算以后用这个代替py2exe了。下次再找找,能不能打成安装包的。
- pyinstaller学习笔记
- python pyinstaller 学习笔记
- pyinstaller生成exe笔记
- 【Python学习】pyinstaller使用
- Python用PyInstaller打包笔记
- pyinstaller
- Pyinstaller
- pyInstaller
- 如何用python制作一个锻炼计算能力的exe小程序-学习笔记11-pyinstaller
- 用PyInstaller将python转成可执行文件exe笔记
- 用PyInstaller将python转成可执行文件exe笔记
- 用PyInstaller将python转成可执行文件exe笔记
- 【个人笔记】Python得到网页源代码&Pyinstaller使用
- pyinstaller手册
- pyinstaller使用
- pyinstaller 杂记
- pyinstaller打包
- PyInstaller打包
- DB2字符串函数
- 国展期间的不顺事
- 函数指针与指针函数
- 关于全局对象
- 通过SSH信任关系,批量修改LINUX密码
- pyinstaller学习笔记
- VC与C++ builder的比较
- db2序列使用
- AWC / Advanced SystemCare Pro(专业版)V3.7.0+有效注册码
- 云计算实践2
- XAML语法术语基础教程(1)
- Oracle 10g 恢复操作概述
- kvm对外部中断的处理
- 10个经典的Android开源应用项目