大家好,欢迎来到IT知识分享网。
Pycharm下使用pyinstaller方法与遇到的问题记录
小白我在学习使用pycharm的时候看到了其中的External Tools功能,由于其可以快速的链接打开想要的应用程序,于是想要自行添加一些工具以便使用.在添加过程中,发现其中Program一栏需要的是exe文件,而手头的文件是py文件,于是开始寻求使用py程序打包工具pyinstaller.
pyinstaller在pycharm下的安装与使用
前排提示,小白我在配置pyinstaller的时候初始环境选的是conda,结果一直提示第三方库找不到的问题,尝试了我能找到的所有办法,但依然没有解决问题.最终成功是选用Virtualenv_environment创建新的interpreter,再重复之前的操作取得了成功.
安装pyinstaller
创建新工具
设置工具的各项内容
正常情况下,
Program:一项填的是在你interpreter所在的目录下的Scripts文件夹下找pyinstaller.exe
Arguments:一项填的是
-p 你interpreter所在的目录\Lib\site-packages -F $FileNameWithoutExtension$.py
这样你对着打开的py文件,右键菜单->External Tools->你创建的工具,就可以打包生成exe文件.
参数说明:
-F 表示生成单个可执行文件
-w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!
-p 表示你自己自定义需要加载的库路径
-i 表示可执行文件的图标(如果你想自定义图标则添加此项并在后面添加ico文件目录)
Working directory:填的是
$FileDir$
这样输出文件就会在你的工程文件夹下
小白我的配置是这样的
执行打包
这时候配置就结束了,然后随便写一段代码,如果run一下没问题,就可以开始打包程序.先右键你要打包的程序,然后
等待执行就行了.
出现successfully就表明打包成功.
输出文件
在你工程文件的文件夹下会新建2个文件夹,build与dist,其中build文件是过程数据,exe文件生成后可以删除不影响使用,exe文件在dist中.注意如果你在程序中调用了文件,如果是绝对路径需要确保这些文件存在,相对路径则把文件对应放到与exe文件一起的文件夹中!
运行成功.
遇到的问题
exe可以正常生成但是运行时候发现闪退?
献上某位博主的答案:
https://blog.csdn.net/zuimengliu/article/details/78912919?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165036888016780265427753%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=165036888016780265427753&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-1-78912919.142v9control,157v4new_style&utm_term=pyinstaller%E6%89%93%E5%8C%85exe%E8%BF%90%E8%A1%8C%E5%A4%B1%E8%B4%A5%E4%B8%80%E9%97%AA%E8%80%8C%E8%BF%87&spm=1018.2226.3001.4187
一般来说就是缺少相关的库文件.这边的缺少不是指在run中报错,而是在打包过程中间会产生很多找不到库的警告,这些警告最终可能会导致运行出错.小白曾经在以往一直使用的conda环境下打包程序,打包的程序有几百MB但是还是缺少库,添加路径也没有用,最终只能更换interpreter.在前面的arguments里面的-F后添加 -w可以看到具体的错误.
加了-w后会显示错误提示,例如:
打包后的文件太大?
献上某位博主的答案:
https://blog.csdn.net/u014421797/article/details/103302925?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165035337416780265469046%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=165035337416780265469046&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-2-103302925.142v9control,157v4new_style&utm_term=pyinstaller%E6%89%93%E5%8C%85exe%E8%BF%90%E8%A1%8C%E5%A4%B1%E8%B4%A5%E4%B8%80%E9%97%AA%E8%80%8C%E8%BF%87&spm=1018.2226.3001.4187
小白在这边就是新建了一个interpreter,只装需要的库,生成文件大小明显减小.
笔者经验不足,如有错误,还望不吝赐教.
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/12926.html