Add Windows release CI
Some checks failed
Build Windows Release / Windows x64 Release (MinGW + Qt + OpenCV) (push) Has been cancelled
Some checks failed
Build Windows Release / Windows x64 Release (MinGW + Qt + OpenCV) (push) Has been cancelled
This commit is contained in:
38
readme.md
38
readme.md
@@ -234,6 +234,44 @@ C:\Qt\6.6.0\msvc2019_64
|
||||
|
||||
通常是 Qt、OpenCV、编译器不匹配。MSVC 工程必须使用 MSVC 版 Qt 和 MSVC 版 OpenCV;MinGW 工程必须使用 MinGW 版 Qt 和 MinGW 版 OpenCV。
|
||||
|
||||
## CI 自动构建和发布
|
||||
|
||||
仓库提供了 Gitea Actions 工作流:
|
||||
|
||||
```text
|
||||
.gitea/workflows/build-windows-release.yml
|
||||
```
|
||||
|
||||
触发方式:
|
||||
|
||||
- 推送到 `main` 分支。
|
||||
- 推送 `v*` 标签,例如 `v1.0.0`。
|
||||
- 在 Gitea 页面手动运行 `workflow_dispatch`。
|
||||
|
||||
CI 会在 Fedora 容器中安装 MinGW-w64、Qt6、OpenCV,交叉编译 Windows x64 程序,然后打包:
|
||||
|
||||
```text
|
||||
QtOpenCVImageTool-windows-x64-<version>.zip
|
||||
QtOpenCVImageTool-windows-x64-<version>.zip.sha256
|
||||
```
|
||||
|
||||
最后通过 Gitea API 上传到仓库 Release。为了允许上传 Release,请在仓库的 Actions Secrets 中配置:
|
||||
|
||||
```text
|
||||
RELEASE_TOKEN=<具有仓库 release 写权限的 token>
|
||||
```
|
||||
|
||||
如果 Gitea 已经给 Actions 提供可写的 `GITHUB_TOKEN`,也可以不配置 `RELEASE_TOKEN`。
|
||||
|
||||
发布版本建议使用 tag:
|
||||
|
||||
```bash
|
||||
git tag v1.0.0
|
||||
git push origin v1.0.0
|
||||
```
|
||||
|
||||
这样 Release 名称和包名会使用 `v1.0.0`。如果只是推送到 `main`,CI 会创建预发布版本,名称类似 `build-提交哈希`。
|
||||
|
||||
## WSL 中交叉编译 Windows 程序
|
||||
|
||||
WSL 里不能使用 Linux 版 Qt/OpenCV 直接生成 Windows exe,必须准备 Windows 目标库。推荐使用 MinGW-w64 作为交叉编译器,并准备同为 MinGW-w64 目标的 Qt 和 OpenCV。
|
||||
|
||||
Reference in New Issue
Block a user