想要将自己写的Pyqt5程序打包成可执行程序
1.创建并激活py虚拟环境
通过Anaconda Prompt进入当前目录下,例如我新建一个目录/square_fbs,cd到该目录下
(python36) E:\square_fbs>
新建虚拟环境
python -m venv venv
./venv/scripts/activate.bat
但是我的python36就是之前新建的一个python3.6的环境,所以这里不再新建,只需要激活该环境
activate python36
2-在py虚拟环境下创建项目
fbs startproject
这里会提示你输入项目名称作者及平台,注意项目名称不要有中文!!!
这里想要打包自己的程序,所以将自己名为 square_qt.py的文件移动到目录\square_fbs\src\main\python下,如图
此时在/src/build/settings/base.json中设置项目主文件,将main.py改成自己的文件名
同时/src/main/icons中可以设置项目图标
注意:在自己的文件中添加
from fbs_runtime.application_context.PyQt5 import ApplicationContext
查看代码是否正确
3-运行
fbs run
主程序默认io路径为项目主文件夹
4-打包(免安装版)(推荐)
fbs freeze
最终生成一个target文件夹,下面放着打包后的exe文件,如果图标使用的是相对路径,记得把图标文件拷贝到exe文件的相对路径下,效果如下:
你可以将此目录复制到任何其他计算机(与您的操作系统相同),并在那里运行应用程序
5-打包(独立exe需解压)
打包之前需要win系统需要安装NSIS,直接下载安装
https://nsis.sourceforge.io/Main_Page
然后将安装路径配置到环境变量中
fbs installer
完成后生成一个.exe文件
资源文件可以放在freeze后的文件夹内再installer即可一起打包进去