python fbs打包

介绍

fbs是基于PyInstaller的打包程序,可以方便的将python 的qt程序进行打包

跨平台

官网:
https://build-system.fman.io/manual/

本文摘自下面链接:
https://blog.csdn.net/luoyayun361/article/details/99611837

https://blog.csdn.net/weixin_38926501/article/details/108401181

安装

pip install fbs

创建项目

fbs startproject

输入后回车,会提示让你回答几个问题:

  • 项目名称
  • 作者
  • Qt绑定(PySide2或PyQt5)
  • 捆绑识别(对于macOS才有)

然后在当前路径下就会生成一个src的目录,结构如下:

└── src
    ├── build
    │   └── settings
    └── main
        ├── icons
        │   ├── base
        │   ├── linux
        │   └── mac
        └── python

在Python目录有一个默认的程序文件:

# 必须导入下面的ApplicationContext
from fbs_runtime.application_context.PySide2 import ApplicationContext
from PySide2.QtWidgets import QMainWindow

import sys

if __name__ == '__main__':
    appctxt = ApplicationContext()       # 1. Instantiate ApplicationContext
    window = QMainWindow()
    window.resize(250, 150)
    window.show()

    # 必须这么写,否则报错
    exit_code = appctxt.app.exec_()      # 2. Invoke appctxt.app.exec_()
    sys.exit(exit_code)

上面的程序,与pyside不同,必须这么写,否则报错

启动项目

由于程序有些变化,所以通过下面命令启动项目

fbs run

打包

正式打包:

fbs freeze

debug打包:

fbs freeze --debug