米爾i.MX6UL開發板Linux應用開發(三)

硬件:米爾i.MX6UL開發板MYD-Y6ULX
簡介:MYD-Y6ULX開發板(i.MX6UL開發板)由MYC-Y6ULX核心板和底板組成,基於NXP i.MX6UL處理器或i.MX6ULL處理器可選,MYD-Y6ULX開發板(i.MX6ULL開發板)提供豐富外設硬件,板載了Mini PCIE接口(用於4G模塊)及SIM卡槽、WIFI芯片及天線接口、雙百兆網口、LCD液晶接口、音頻接口、帶隔離的CAN,RS485,RS232等。
部署開發環境:開發前需要PC安裝好Linux操作系統,推薦使用Ubuntu 16.04 64bit發行版,連接網線並配置好網絡,後續操作需要連接互聯網安裝或下載相關軟件包。
在這裏插入圖片描述

本章介紹QT應用開發
Qt是一個跨平臺的圖形應用開發框架,被應用在不同尺寸設備和平臺上,同時提供不同版權版本供用戶選擇。MYS-6ULX使用Qt 5.6.2版本進行應用開發。

在Qt應用開發中,推薦使用QtCreator集成開發環境,可以在Linux PC下開發Qt應用,自動化地交叉編譯爲開發板的ARM架構。

本章使用Yocto構建的SDK工具作爲交叉編譯系統,配合QtCreator快速開發圖形類應用程序。開始本章前,請先完成前面(一)的Yocto構建過程。或者使用光盤中提供的預編譯好的SDK工具包。本章開始前,請安裝好應用SDK開發工具。

安裝QtCreator
QtCreator安裝包是一個二進制程序,直接執行就可以完成安裝。
cd $DEV_ROOT

chmod a+x 03-Tools/qt-creator-opensource-linux-x86_64-4.1.0.run
sudo 03-Tools/Qt/qt-creator-opensource-linux-x86_64-4.1.0.run

執行安裝程序後,一直點擊下一步即可完成。默認安裝目錄

在"/opt/qtcreator-4.1.0"。

安裝完成後,爲了讓QtCreator使用Yocto的SDK工具,需要對QtCreator加入

環境變量。修改"/opt/qtcreator-4.1.0/bin/qtcreator.sh"文件,在"#!

/bin/sh"前加入Yocto的環境配置即可,參考如下:

source /opt/myir-imx6ulx-fb/4.1.15-2.0.1/\
environment-setup-cortexa7hf-neon-poky-linux-gnueabi
#! /bin/sh
# Use this script if you add paths to LD_LIBRARY_PATH
# that contain libraries that conflict with the
# libraries that Qt Creator depends on.

使用QtCreator時,請從終端執行"qtcreator.sh"來啓動QtCreator,參考如下:

/opt/qtcreator-4.1.0/bin/qtcreator.sh &

配置QtCreator
第一步,運行 QtCreator 後,依次點擊"Tool"->“Options”,出現選項對話
框,在左側點擊"Build & Run",右邊選擇"Compilers"標籤。 點擊右側"Add"按鈕,彈出下拉列表後,選擇"GCC",在下面填寫"Name"爲"MYS6ULx-GCC",“Compiler path"點擊旁邊的"Browse…“按鈕選擇到arm-poky-linux-gnueabi-g++的路徑,例子中的路徑是”/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++”。填寫完成後,點擊"Apply"。
!
在這裏插入圖片描述

第二步,選擇"Qt Version"標籤,在右側點擊"Add…",會彈出qmake路徑選
擇對話框,這裏以"/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/x86_64-
pokysdk-linux/usr/bin/qt5/qmake"爲例子。選擇”qmake”文件後,點
擊"Open"按鈕。“Version name"改爲"Qt %{Qt:Version} (mys6ulx-qt5)”。然後
點擊"Apply"按鈕。
在這裏插入圖片描述
第三步,選擇左側"Device",點擊右邊的"Add…“按鈕,填寫內
容"Name"爲"MYS6ULx Board”,“Host name"爲開發板的IP地址(可以暫時填
寫任意一個地址),“Username"爲"root”,然後點擊"Apply”。
在這裏插入圖片描述
第四步,點擊左側"Build & Run"回到"Kits"標籤下,“Name"爲"MYS6ULx-
dev-kit”,"Device"選擇"MYS6ULx Board"選項了。“Sysroot"選擇目標設備的
系統目錄,這裏以”/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/cortexa7hf-
neon-poky-linux-gnueabi"爲例。“Compiler"選擇之前配置的名稱"MYS6ULx-
GCC”,“Qt version"選擇之前配置的名稱"Qt 5.6.2 (mys6ulx-qt5)”,“Qt
mkspec"填寫爲"linux-oe-g++”。其它默認即可,最後點擊"Apply"和"OK"按
鈕。
在這裏插入圖片描述

測試Qt應用
爲了方便測試之前的配置是否正確,這裏提供了一個Qt例程,打開項目後,
配置爲相應的編譯工具套件,就可以編譯此例程。
第一步,在菜單欄選擇"File"->“Open File or Project”,在打開的對話框中,
瀏覽到"helloword"例程的目錄下,選擇"helloworld.pro"文件,點擊"Open"按
鈕。
第二步,項目打開後,在左側菜單列中,選擇"Projects"圖標,右側界面切換
爲"helloworld"項目的"Build & Run"標籤下,點擊"Add kit"下拉列表,選
擇"MYS6ULx-dev-kit"選項,這樣"helloworld"項目就會使用"MYS6ULx-dev-
kit"的相關配置構建應用。
第三步,點擊菜單欄"Build"->“Build Project hellowrld"按鈕,即可完成項目的編譯,同時下側會有編譯過程輸出。
編譯輸出結果:
在這裏插入圖片描述
QtCreator 構建 helloworld 項目後,編譯好的二進制文件存放在”~/build-
helloworld-MYS6ULx_dev_kit-Debug/"目錄下,可以使用 file 命令查看,是否編譯爲 ARM 架構。

file ~/build-helloworld-MYS6ULx_dev_kit-Debug/helloworld
/home/kevinchen/build-helloworld-MYS6ULx_dev_kit-Debug/helloworld: 
ELF 32-bit LSB executable, ARM, EABI5 version 1 (GNU/Linux), 
dynamically linked, interpreter /lib/ld-linux-armhf.so.3, 
for GNU/Linux 2.6.32, 
BuildID[sha1]=9c5f22deb1d8272c2a81528c171d215896112784, not stripped

然後將 helloworld 文件拷貝到開發板下運行即可。

# ./helloworld -platform linuxfb

將會在 LCD 屏幕上看到Qt 窗口中多個QLabel的文本內容。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章