cx_Freeze打包py文件
最近需要将python代码打包成exe,打包过程中出现了一些问题,特此记录,也顺便记录下cx_Freeze使用方法,留待日后查看。
首先进行下载,需要注意对应的版本号,比如本人使用python3.4,64位,故下载cx_Freeze-4.3.3.win-amd64-py3.4.msi这个版本,下载后在python
安装目录下就可以看到cxfreeze,然后配置好环境变量就可以使用了,如图:
cxfreeze
有两种打包方式,一是cxfreeze script
,这种方式很简单,只要打开cmd
,cd
到python
文件所在目录,比如文件名为hello.py
,执行:
cxfreeze hello.py --target-dir dist
如果要生成可安装包文件,就要用到这种打包方式,名为distutils setup script
,这种方式必须创建一个setup.py
文件,可以使用官方提供的:
|
|
或者在cmd
窗口输入cxfreeze-quickstart
也可以自动生成setup.py
,如下:
接下来只要到python文件的目录,运行
python setup.py bdist_msi
如果想更加详细了解操作方法,可以查看官方文档
官方操作文档:查看
问题
可是我在使用 cxfreeze hello.py --target-dir dist
后,发现生成的exe文件无法运行,总是一闪而过,心好累,一番谷歌,找到如下解决办法:
1、去这个网站下载cx_Freeze(注意32/64位)
cx_Freeze‑4.3.4‑cp34‑none‑win64.whl
2、把扩展名whl,改为zip进行解压
4、然后进入C:\Python34\Lib\site-packages
,请参考各自python安装路径,删除cx_Freeze相关的包,我这里有两个,全部都删除掉
5、然后将cx_Freeze‑4.3.4‑cp34‑none‑win64
目录下的文件夹全部复制到C:\Python34\Lib\site-packages
,如图:
最后进行打包,cxfreeze hello.py --target-dir dist
,终于可以运行了,如果想打包成一个exe文件的话,可以将dist文件夹下面的文件全部创建自解压文件,不会的看这里。
这样就解决了,希望能有帮助。
- 原文作者:howie.hu
- 原文链接:https://www.howie6879.com/post/2016/04_package-py-lib-with-cx_freeze/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。