基于Qt/E的嵌入式GUI的研究及其移植
$ mkdir -p /usr/local/arm
$mv ./2.95.3 /usr/local/arm
然后,在環(huán)境變量PATH中添加路徑,就可以直接使用arm-linux-gcc命令了。
$export PATH=/usr/local/arm/2.95.3/bin:$PATH
2) 交叉編譯Qt/E庫
安裝完交叉工具鏈之后,需要對Qt/E軟件包進(jìn)行交叉編譯。將Qt/E的源代碼拷貝到另外一個目錄下,依次執(zhí)行如下命令序列:
tar xfz qt-embedded-free-3.2.1.tar.gz
cd qt-embedded-free-3.2.1
export QTDIR=$PWD
export QTEDIR=$QTDIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/arm/2.95.3/bin:$PATH
./configure -embedded arm -thread
Qt/E的配置選項(xiàng)可以參考./configure –help。其中比較關(guān)鍵的是-embeddded arm 表示配置為目標(biāo)板為ARM的嵌入式用途,在編譯過程中會進(jìn)行多級優(yōu)化以減小體積,提高效率。
3) 交叉編譯Qt/E應(yīng)用程序。
有了交叉工具鏈以及經(jīng)過交叉編譯的Qt/E庫之后,就可以將驅(qū)動程序或應(yīng)用程序進(jìn)行編譯,然后發(fā)布到ARM平臺上。
首先,編寫項(xiàng)目工程文件.pro,然后用qmake工具生成Makefile文件,最后調(diào)用Make指令編譯、鏈接即可。這個過程中,在生成 Makefile文件之前,需要修改環(huán)境變量使其指向交叉編譯后的Qt/E庫所在目錄。最終生成ARM平臺目標(biāo)代碼,即可在目標(biāo)平臺上運(yùn)行測試。
5 總結(jié)
嵌入式產(chǎn)品的廣泛應(yīng)用帶動了圖形用戶界面(GUI)的迅速發(fā)展,嵌入式系統(tǒng)需要一個高性能、高可靠的GUI支持。Qt/E延續(xù)了Qt在桌面系統(tǒng)的所有功能,豐富的API接口和基于組件的編程模型使得嵌入式Linux系統(tǒng)中的應(yīng)用程序開發(fā)更加便捷。由于Qt/E本身面向高端的手持設(shè)備和移動設(shè)備,將成為未來嵌入式系統(tǒng)的主流GUI。
本文創(chuàng)新觀點(diǎn):
本文首先比較當(dāng)前流行的國內(nèi)外幾種嵌入式GUI系統(tǒng)的實(shí)現(xiàn)方式與特點(diǎn),分析它們的優(yōu)缺點(diǎn)。著重介紹了基于Qt的嵌入式GUI——Qt/Embedded,并通過舉例來具體說明Qt/Embedded應(yīng)用程序的移植過程。
參考文獻(xiàn):
[1] 丁丁,習(xí)勇,魏急波. 三種主流嵌入式圖形用戶界面的移植及性能比較 [J]. 電子產(chǎn)品世界,2004.5。
[2] 倪繼利. Qt及Linux操作系統(tǒng)窗口設(shè)計[M]. 北京:電子工業(yè)出版社,2006-04。
[3] Xteam(中國)軟件技術(shù)有限公司. Qt程序設(shè)計,清華大學(xué)出版社。
[4] Arthur Griffth著,高壽福等譯. KDE2/Qt編程寶典[M].北京:電子工業(yè)出版社,2001-01。
[5] Qt參考文檔 http://www.qiliang.net/qt/index.html
[6] 郭磊,何波,于青,王乾. 基于QTE的嵌入式Linux下可視化打印設(shè)計[M]. 微計算機(jī)信息 2007 3-2: 15-16。
評論