转载请注明作者(独孤尚良dugushangliang)出处:https://blog.csdn.net/dugushangliang/article/details/81740340
本机windows10系统,今安装cx_freeze来把python程序打包成exe可执行文件,网上也不少帖子,而做起来总没有他们写的那么顺畅,错误百出,且不知道问题所在。也看了一些代码,像我这样看不懂的想必也不少,所以特别写这个bolg来帮助后来者。
第一步,为稳妥起见,关闭其他不必要的软件,以管理员身份运行cmd,输入:
pip install cx_freeze
如果提示pip不是内部或外部命令,也不是可运行的程序,那就麻烦你们自己找一找相关的pip命令启动的帖子吧,IIS改下设置。如果有下图情况,可依据提示完成pip升级。
升级pip成功后,就执行安装cx_freeze的代码吧。执行后出现下图所示,那就是需要手动做一些干预了。
打开你的python安装路径中Scripts文件夹,找cx_freeze相关文件,如果只有三个,莫慌,打开cxfreeze-postinstall文件,把里面的东西用python执行下,这个文件旁边就会多两个兄弟,其后缀名为“.bat”。
接下来怎么办了?不好办啊。难啊。难办啊。难办也要办啊。那怎么办啊?不好办啊……
于是,各种找大神、找资料、找信息、找解决办法……
直接粘贴代码,运行,改代码,运行,出各种问题。无论是用py运行的方式,还是cmd运行的方式,都无功而返,扼腕而叹。长太息以掩涕兮,哀民生之多艰……想做个事情,也很麻烦的呢,各种阻拦……
屡败屡战,终于找到了一条路,走了过去。
你们都身轻如燕,轻轻一跃,过了阻拦,而对于我高不可攀,那怎么办?绕个圈圈,虽然远,能到达那边。
运行这个文件,直接点——cxfreeze-quickstart.bat
根据它的提示,一次输入项目名等,这个我也在研究。
然后呢,你刚刚点的文件,即Scripts文件夹内,就有了setup.py了。我们把这个单独拿出来放到一个路径下,cmd管理员身份运行,输入代码,开始执行。
然后就在你指定的文件夹那里看到了下面这些东西:
对呀,这个路径在哪了?就是你设的路径啊。上图有明显的说明。
对了,有时候会提示一些内容,抓耳挠腮,电脑重启好多次,软件都关了,为嘛还不给我过?
对,就是这个,为嘛拒绝我?为什么呀?苍天啊,大地啊,我做了什么,就要这么折磨我啊?
对比上下图,看出来了吗?问题就是你给它的是一个文件夹的路径,即,某个地方的文件夹。它需要的是啥?是文件啊,是你要打包的文件啊。所以我又加了几个字符,就是下图这样。
说起来这个问题怪谁了?没办法啊,它就像孩子一样,哪里不舒服了,哭哭闹闹,这还好,说拒绝,但是没说详细,总算比婴儿好多了,如果是婴儿,它只会给你说ERROR,得了,你也不知道哪里错了。这个还好吧,至少说了拒绝。然而我们希望的是,它能不能说清楚啊?话说一半。你如果直接说,指定文件不对,应该指定你要打包的文件,我们就懂了。
好吧……你怪我不懂你……好……我不懂你……我刚开始确实不懂你啊……
接下来怎么办?你看咯。接受,就继续相处,不接受你继续找别的吧。
别别别,我还是继续努力吧。
言归正传,我改了这个设置后,终于生出来了我想要的exe文件。终于大功告成了。来,一起庆祝下。
yeah,正如你所料,一山放过一山拦,继续找问题所在吧。
我看了下面这些链接,如有疑惑,可以看看他们的。
1:https://blog.csdn.net/weixin_40450867/article/details/81184402
2:https://blog.csdn.net/a19990412/article/details/80954044
3:https://blog.csdn.net/lluozh2015/article/details/53080920?locationNum=11&fps=1
4:https://blog.csdn.net/mudooo/article/details/80284344
5:https://blog.csdn.net/zz__elpsycongroo/article/details/38824301
独孤尚良dugushangliang——著