在嵌入式開發的浪潮中,RK3568平臺以其強勁性能成為諸多領域的寵兒,而QT憑借出色的跨平臺特性和豐富功能,是界面開發的利器。將 QT5 移植到 RK3568 平臺的深度融合,是嵌入式硬件標準化與軟件開發模塊化的必然趨勢,這一技術組合將成為連接 “硬件算力” 與 “用戶體驗” 的核心紐帶,推動更多智能設備從 “功能可用” 邁向 “體驗卓越”。
瑞迅RK3568主板移植部署QT5技術實操如下
技術分享
一、下載QT5源碼
下載地址:https://download.qt.io/archive/qt/
二、QT配置和編譯
1.解壓后進入源碼路徑。創建一個autoconfig.sh。編輯內容
這里面有兩個參數需要注意
-sysroot 指定目標根文件系統位置。這里可以將整個文件系統copy到sysroot指定的目錄下,然后修改里面庫的符號鏈接為相對路徑,要不然編譯過程中會提示無法找到相關庫問題。
-prefix 指定編譯完成后make install時的安裝位置,如果系統中指定了sysroot參數,那么安裝位置為sysroot+prefix。利用默認的安裝位置時可以不用指定prefix參數。
-extprefix 這個參數和prefix 的作用差不多,只不多extprefix 指定的安裝路徑位置不添加sysroot指定的路徑,例如:-extprefix /opt/qt5.12.11-aach64 那么make install后安裝位置為編譯主機的/opt/qt5.12.11-aach64目錄中。
注:make install的具體安裝位置可以在配置命令執行完成的log中看到。
2.修改編譯工具鏈
修改文件:qtbase/mkspecs/linux-aarch64-gnu-g++/qmake.conf。這個需要根據自己目標機器的cpu架構進行修改。我用的是arm64的cpu,這里具體用哪個文件下的qmake.conf是和配置中的-xplatform參數對應的。
這里可以修改成交叉編譯工具鏈的絕對路徑。
3.添加QT支持OpenGL es2和eglfs庫的路勁和頭文件
4.執行編譯
經過上面的修改后執行下面命令執行配置和編譯
如果配置過程中出錯,需要先刪除config.log和config.cache在重新執行autoconfig.sh進行配置。
配置階段無誤的話下面這幾項會被選擇
三、部署
make install 編譯好的QT系統會被安裝到extprefix指定的目錄中。copy打包這個目錄并把它放在目標主機中相同的目錄結構下,建議用tar的方式壓縮,防止丟失符號鏈接。
配置環境變量
修改/etc/profile文件添加下面環境變量
QT_QPA_PLATFORM這個環境變量可以不用指定,如果想用eglfs顯示可以在運行QT程序的時候增加參數“-platform eglfs”。
如果想在sudo命令下正確的利用eglfs插件顯示還需要在/etc/environment中添加如下兩行。
另外:如果需要打印更多log可以設置export QT_DEBUG_PLUGINS=1環境變量。
四、測試驗證
QT源碼中有多個例程可以用來驗證3D功能。利用編譯生成的qmake可以對其進行編譯。下面是其中一個例程在機器上的運行效果,另外通過查看GPU的使用率,可以確定硬件加速是否使能。
移植過程中難免會遇到諸多問題,下一期將介紹移植過程中問題解決,歡迎持續關注,共同探討!
-
嵌入式
+關注
關注
5149文章
19651瀏覽量
317204 -
主板
+關注
關注
54文章
2132瀏覽量
73057 -
瑞芯微
+關注
關注
25文章
580瀏覽量
52436
發布評論請先 登錄
評論