chinese | english |
---|
此 Repository 為 Qt framework app 於 Github actions 的 Demo 範例
目前只支援 qmake , cmake 尚未實現
License | Release | Download | Issues | Wiki |
---|---|---|---|---|
Windows |
---|
Linux |
---|
MacOS |
---|
Android |
---|
IOS |
---|
Qt version |
---|
5.9.9 |
5.10.1 |
5.11.3 |
5.12.10 |
5.13.2 |
5.14.2 |
5.15.2 |
6.0.x |
- Qt 版本搭配 compiler 說明
Qt version | MSVC | Mingw | Linux | MacOS | Android | IOS |
---|---|---|---|---|---|---|
5.9.9 | msvc2015 | mingw53 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
5.10.1 | msvc2015 | mingw53 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
5.11.3 | msvc2015 | mingw73 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
5.12.10 | msvc2017 | mingw73 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
5.13.2 | msvc2017 | mingw73 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
5.14.2 | msvc2017 | mingw73 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
5.15.2 | msvc2019 | mingw81 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
6.0.x | msvc2019 | mingw81 | gcc_64 | clang_64 | armeabi-v7a/arm64-v8a/x86/x86_64 | clang_64 |
- 切換至目前提交
- 配置 python 環境
- 配置所需的系統環境變數
- 安裝相依的套件
- 下載 Qt 編譯環境
- 建置
- 打包
- 上傳至 github artifacts
- 上傳至 github Release 項目( 只接受有加 git tag 之 commit)
-
Step 1. Qt
yourprofile.pro
profie 新增以下內容CONFIG(debug,debug|release) { DESTDIR = $$absolute_path($${_PRO_FILE_PWD_}/bin/debug) } else { DESTDIR = $$absolute_path($${_PRO_FILE_PWD_}/bin/release) }
-
Step 2. 移動source code 至 src 目錄 (選擇性修改)
e.g.
SOURCES += \ src/main.cpp RESOURCES += src/qml.qrc
-
Step 1. 將範例專案中以下目錄移至您的Qt 專案
- util/
- .github/
-
Step 2. 修改 util/ci/config.py
app_name = 'your app name' pro_name = 'your pro file name'
-
Step 3.依據需前修改 *.yml 的 qt_modules 配置
ref api path: https://download.qt.io/online/qtsdkrepository/
-
預設設定github actions 啟動條件為 push / pull_request 後, 若修改以下檔案才觸發自動化流程:
- '*.pro' - 'src/**' - '.github/workflows/build_android.yml'
📃 請自行修改 .github/workflows/xxx.yml 的
on:
key 配置 -
若psuh 一個 tag 將觸發所有平台的 actions , 自動執行自動化佈署並產生相關執行檔請至以下連結下載: