一、 前言
芯馳 X9H 晶片,搭載多個操作系統協同運行,系統實現了儀表、空調、中控、副駕多媒體的四屏驅動控制,在人車智能交互上可以通過顯示屏、螢幕觸摸控制、語音控制、物理按鍵控制、車身協議的完美融合,使汽車更智能。讓車主及乘客有更好的體驗樂趣。在儀表的應用中很可能會用到 QT,本文介紹 QT 靜態編譯的方法,這種方法優勢在於不依賴外部庫文件,方便移植。
二、 軟體環境搭建
1. 軟體基線下載
本文使用 PTG4.1 版本基線,使用 X9HP_Ref_Isolation_AndroidUser_Linux_Serdes_8G_emmc_3200.json 配置文件。
- 配置 key
- 下載 buildsystem 文件夾
- source lunch_sd.sh -c X9HP_Ref_Isolation_AndroidUser_Linux_Serdes_8G_emmc_3200.json -b X9_3.0.0_PTG4.1 -u customer_c
- make sync_all 同步代碼
- make build_all 編譯
- make genpac 生成 pac 包
2. 軟體燒錄
使用提供的 SdToolsBox 工具進行下載,驗證基礎功能完好。
3. 安裝工具鏈
下載並安裝芯馳提供的工具鏈 cluster-qt-glibc-x86_64-semidrive-qt-sdk-aarch64-toolchain-2.5.3.sh。
查看交叉編譯工具鏈
三、 QT 軟體安裝
1. 從官網下載 QT Linux 5.12.5
3.1.1 安裝 QT
3.1.2 選擇工程路徑
3.1.3 選擇安裝選項
3.1.4 協議選擇
3.1.5 開始安裝
2. QT 靜態編譯
3.2.1 解壓 static_5.12.5_qt_env.7z 文件
3.2.2 修改 compiler-config.sh 中路徑為 export CROSS_COMPILE_PATH=/opt/cluster-qt/2.5.3
3.2.3 設置環境變量
source /opt/cluster-qt/2.5.3/environment-setup-aarch64-sdrv-linux
3.2.4 編譯核心庫
sudo ./qtbase-make.sh static 開始編譯
3.2.5 編譯其他庫
sudo ./qtsubmodules-make.sh static
3. 配置 QT
參考 《qt_window應用遠程部署調試環境搭建》文檔,配置 QT。
四、 測試驗證
1. 建立 QT 測試工程
2. 編譯工程
- 執行 source /opt/cluster-qt/2.5.3/environment-setup-aarch64-sdrv-linux
- 執行 source my.sh
- 執行 export QTDIR PATH MANPATH LD_LIBRARY_PATH
- 執行 qmake xxx.pro
- 執行 make
3. 執行應用程序
- 使用 adb 工具 push 進板子
- 板端輸入 export QT_QPA_EGLFS_INTEGRATION=none
- 執行應用程序,可顯示出畫面
五、 總結
經過以上幾步,可以編譯出 QT 應用程序,最基本的程序 12M 左右,在板子上執行後可以顯示出界面,與工程中放置的 2 個 Button 一樣,這樣可以不依賴外部庫獨立移植。
六、 參考文檔
- 《SD_X9_SDK_User_Manual》
- 《qt_window應用遠程部署調試環境搭建.pdf》
歡迎在博文下方留言評論,我們會及時回復您的問題。
如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com 作者:Chelsea Tong / 佟強
更多資訊,請掃碼關注我們!
評論