樹莓派+QT5.9.9交叉編譯(QT環境配置篇)


樹莓派+QT5.9.9交叉編譯(QT環境配置篇)

在前一章節中我們成功編譯出qmake(5.9.9版本rpi),並且成功集成在了鏡像中。編譯環境等均保存在鏡像文件中。本章節我們講述QT的環境配置,和我們怎么將應用更新到樹莓派。
另外是前面描述使用5.9.9,現在為什么換成了5.9.6的QT,我們這里主要用到QT的qtctreator和qmake(桌面版本),在使用5.9.9會出現dbus庫版本過舊的問題,更新庫后還要更新一堆庫,所以退而求其次使用5.9.6版本。我們使用的緊是5.9.6版本中的qcreator,我們核心編譯器已經是5.9.9了。

第一步安裝Qt5.9.6,已安裝了可跳過此步

到官網上下載,http://download.qt.io/archive/qt
下載的版本是qt-opensource-linux-x64-5.9.6.run,使用WinScp下載到虛擬機中。
添加可執行權限

chmod +x qt-opensource-linux-x64-5.9.6.run
./qt-opensource-linux-x64-5.9.6.run

第二步 qt安裝

然后選擇組件進行安裝。
需要有在官網注冊個QT賬號。

圖1

輸入賬號和密碼后,默認安裝即可。

圖2

配置選擇,然后就是下一步直到完成。

圖3

第三步 准備工作

在前一章節中,我們燒寫鏡像時將鏡像文件取消掛載。現在我們需要用到鏡像文件中的qmake 和交叉編譯環境,需要重新掛載鏡像。

cd ~/rpi
sudo mount -o offset=50331648 -t ext4 2019-04-08-raspbian-stretch.img /mnt/rasp-pi-rootfs/

在~/Qt5.9.6/Tools/QtCreator/bin中找到qtcreator

圖4

cd ~/Qt5.9.6/Tools/QtCreator/bin
./qtcreator

QT5.9.9版本在14.04 x64系統中會彈出如下錯誤,如下圖。 

圖5

為了減少麻煩,我們直接選擇了5.9.6版本QT。

第四步 qt配置

打開qtcreator

~/Qt5.9.6/Tools/QtCreator/bin/./qtcreator

Tools -> Options
編譯鏈配置

圖6


圖7

qmake配置

圖8

Kits配置


圖9

好了從官方例程中打開一個工程,選擇配置

圖10

先在linux下選擇Desktop 進行編譯並運行,這時會彈出一個錯誤

圖11

我們安裝如下內容可解決。

sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev

安裝完成后,我們關閉Qtcreator再次打開運行Demo

圖12

然后將Kit選擇為RaspberryPi,然后進行Rebueld

圖13

這時我們可以在build-gallery-RaspberryPi-Release文件中找到樹莓派可執行程序gallery

圖14

我如何將編譯出的程序下載到樹莓派中呢,方法挺多的:
1,使用winscp將程序先搬到windows中,再搬移到樹莓派中;
2,直接下載到樹莓派中。

下面我們來講下如何可以直接下載到樹莓派中。

圖15

先啟動手上的樹莓派,然后查看下樹莓派上的IP,讓樹莓派和我們現在的主機在同一個局域網內。
然后我們配置樹莓派的IP和登錄信息。注意:登錄信息是樹莓派的賬號和密碼。

圖16

成功連接如下圖所示

圖17

點擊OK 后我們再次配置Kits

圖18

修改工程文件pro修改target.path = /home/pi/,完成后就可以點擊debug了。

圖19

在樹莓派上運行結果截圖。

圖20

由於我們現在沒有安裝字庫,所以無法顯示漢字。先准備好wqy-zenhei.ttc,用winscp先導入到樹莓派的用戶目錄下。

sudo mkdir /usr/local/qt5pi/lib/fonts
sudo mv wqy-zenhei.ttc /usr/local/qt5pi/lib/fonts

現在我們就可以編譯Raspberry應用並下載到目標板執行。

總結

本章節總體來書沒有什么技術難度,只要在前一章節中成功的編譯出qmake(5.9.9),本章節就是配置的工作。同學們之后就可以在樹莓派上進行QT飆車了。
下來大家發現有什么問題或需要討論交流,可以在簡書、博客園、或郵箱將問題進行留言,我會及時回復和更新。
郵箱: whqcxz@163.com
原創:https://www.simbahiker.com/news/0220200612001.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM