码迷,mamicode.com
首页 > Windows程序 > 详细

windows下pyinstaller打包踩坑记录

时间:2019-10-15 13:10:23      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:cmd   workspace   sage   引用   打包   img   问题   space   exp   

示例:

 

需要打包的是 ReadConfig.py 文件,同文件夹下调用了Interface.py文件,ui文件夹下调用了 Ui_config.py和Ui_Error.py文件,Interface.py又调用了fileread文件夹中的文件

不要将入口程序写在__init__.py文件中,否则打包可以成功,但是无法运行,cmd运行也不报错,具体原因未知

技术图片

 

 技术图片

 

在文件夹处打开cmd,输入:

pyinstaller $IncludePath$ $FileName$ 
  • IncludePath:所有需要引用py的文件夹 -p ‘‘文件夹1" -p "文件夹2" ......

    英文双引号最好加上(可以将文件夹直接拖入cmd窗口中),不然程序路径中出现空格时会出现问题,也不要使用 -p path0:path1:path2... 有时也会出现问题

  • FileName: 程序入口文件

示例的命令如下:

pyinstaller -p "F:\CODE\python\eric6_workspace\ReadConfig\ui" -p "F:\CODE\python\eric6_workspace\ReadConfig\fileread" ReadConfig.py

如果打包成功会在dist子文件夹中出现可执行文件

技术图片

 

 技术图片

 

如果能够成功运行,则表明成功,但此时的程序会出现后台控制窗口,如果要去掉可以加上参数 “--noconsole”,打包前最好清理build和dist文件夹,不然可能会无效

pyinstaller -p "F:\CODE\python\eric6_workspace\ReadConfig\ui" -p "F:\CODE\python\eric6_workspace\ReadConfig\fileread" ReadConfig.py --noconsole

如果想打包成一个exe可以 -p 前添加 -F参数,打包前同样最好清理以下

pyinstaller -F -p "F:\CODE\python\eric6_workspace\ReadConfig\ui" -p "F:\CODE\python\eric6_workspace\ReadConfig\fileread" ReadConfig.py --noconsole

 

 其它参数可以参考:

https://pyinstaller.readthedocs.io/en/stable/usage.html#options

运行失败

如果程序运行时一闪而过,或者出现failed to execute script,打开一个cmd窗口,将程序拖入cmd中按Enter运行,例如本文去掉第二个路径,会报以下错误:

技术图片

 

 这时候把需要的模块路径在打包参数中添加就好了,其他问题还没碰到,欢迎探讨

 

windows下pyinstaller打包踩坑记录

标签:cmd   workspace   sage   引用   打包   img   问题   space   exp   

原文地址:https://www.cnblogs.com/Summerio/p/11676943.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!