簡介
Qt for Harmony? 是跨平臺開發框架 ?Qt? 與華為 ?OpenHarmony? 操作系統的深度集成方案,由 Qt Group 與華為聯合推動。其核心目標是為開發者提供一套高效工具鏈,實現 ??“一次開發,多端部署”?,加速 OpenHarmony 生態的應用遷移與創新。
本文主要實現在Windows端使用Harmony NDK在Qt Creator中編譯生成Qt for OpenHarmony調用的動態庫。
資源下載
在編譯之前需要先下載相關的工具包然后進行環境配置。
1.Qt SDK
Qt Wiki官網文檔中介紹可以獲取Qt for OpenHarmony的源碼,然后編譯源碼生成SDK,但是構建過程比較麻煩,感興趣的可以自己去按照步驟操作一遍,地址在這里。
此外,openharmony-sig項目中提供了SDK包,供使用者下載,發布包中只提供了Windows平臺下的SDK,直接下載現成的,可以省去編譯步驟。目前發布的最新版是:Qt For OpenHarmony Alpha v6版本
我這邊下載的是 alpha_v6 Qt5.15.12 OpenHamrony arm64-v8a二進制包
下載后可以看到,該版本名稱是 Qt5.15.12_alpha_v6_arm64-v8a_openharmony_ndk_4.1.7.8_community_win,這是基于鴻蒙OS v4.1.7
版本,Qt版本是Qt5.15.12
解壓待用。
2. DevEco Studio安裝
DevEco Studio是華為推出的集成開發環境(IDE),專為HarmonyOS應用開發設計。支持HarmonyOS多設備、多語言開發,提供豐富的工具鏈和模板,幫助開發者高效構建全場景應用。
安裝DevEco Studio主要是為了方便下載不同版本的鴻蒙SDK,下載DevEco Studio會默認自帶一個sdk,需要選擇一個自己想要的版本。
下載地址在這里
下載安裝后,在文件->設置,打開設置頁面:
然后點擊OpenHarmony SDK頁面
上一步中我們下載的Qt SDK對應的OpenHarmony 版本是4.1.7,所以這里我們需要下載對應的鴻蒙SDK版本,需要注意的是,選擇OpenHarmony SDK保存的位置一定不能帶有空格,否則后面的配置編譯將會出問題。
3.Qt安裝
這里建議安裝Qt6以上的版本,我本機安裝的是Qt6.8.2
,Qt需要在線下載安裝,下載地址
下載后選擇對應的Qt版本進行安裝即可。安裝Qt的時候注意要選擇安裝工具 mingw,編譯的時候需要用到,這部分就不再贅述。
4.Cmake安裝
在上一步安裝Qt的時候可以同時選擇安裝工具Cmake,當然也可以自行下載Cmake進行安裝, 安裝完后記得設置環境變量。下載地址
環境配置
以上相關步驟準備好后,接下來是最重要的環境配置,在 Qt Creator 中為 OpenHarmony 創建開發工具包。
打開Qt Creator,點擊 編輯->首選項
配置Qt版本
手動添加Qt版本,這里選擇上一步中下載的Qt SDK的路徑中的qmake
配置編譯器
前面步驟中下載的鴻蒙SDK的路徑中包含有C 和C++ 的編譯器,點擊“添加”,選擇設置相應的路徑,如下:
配置構建套件
切換到“構建套件頁面”,點擊添加,配置相應的選項,如下:
環境變量
轉到編輯→首選項→環境→系統,然后單擊環境部分中的Change…按鈕,添加鴻蒙SDK的環境變量。
以上配置,踩過很多坑,按照Qt Wiki文章中的方法進行配置除了很多問題,可能是因為版本不同導致的吧,有些配置項跟Qt Wiki文章中介紹的不一樣,不信邪的可以自行去操作一遍。
開始編譯
準備好一切過后,接下來就可以正式開始編譯了。
創建一個簡單的Qt工程,選擇編譯方式選擇qmake,然后選擇我們配置的OHOS Clang套件進行編譯:
編譯完成便可得到一個.so動態庫文件。
接下來就可以在鴻蒙工程中調用這個動態庫文件使用了。
關于如何在DevEco Studio中創建鴻蒙項目并調用動態庫的問題,后續再更新~
也可以直接參考Qt Wiki的文章介紹,繼續進行。
參考文章
https://gitee.com/openharmony
https://wiki.qt.io/Qt_for_OpenHarmony/zh
https://gitee.com/openharmony-sig/qt/wikis/