在Mini2440上Qtopia應(yīng)用程序開(kāi)發(fā)步驟
在Mini2440上Qtopia應(yīng)用程序開(kāi)發(fā)步驟是本文要講解的內(nèi)容,目前市場(chǎng)上提供的Linux和WindowsCE 5.0/6.0系統(tǒng),在技術(shù)和功能上已經(jīng)達(dá)到國(guó)內(nèi)Mini2440開(kāi)發(fā)板中最高水平,它們各自的bootloader以及BSP均是100%開(kāi)放的。
FriendlyARM在光盤(pán)中提供了開(kāi)發(fā)Qtopia-2.2.0的開(kāi)發(fā)環(huán)境和軟件,因此只要對(duì)其中的軟件好好加以利用就可以開(kāi)發(fā)出能夠在mini2440上運(yùn)行的程序,下面我把我自己開(kāi)發(fā)經(jīng)歷做一個(gè)交流,我相信在我們這群技術(shù)的熱愛(ài)者中不乏高人和大牛,所以我也是拋磚引玉,如果有說(shuō)的不對(duì)的請(qǐng)大家提出來(lái),這樣才能更好進(jìn)步。好,閑話(huà)不多說(shuō),進(jìn)入正題,我先講講FriendlyARM中提供的開(kāi)發(fā)環(huán)境和軟件的作用:
按照FriendlyARM文檔安裝所有軟件后,可以發(fā)現(xiàn)mini2440文件夾下包含了兩個(gè)qtopia文件夾,一個(gè)是x86-qtopia另一個(gè)是arm-qtopia,對(duì)于這兩個(gè)文件夾我是這么理解的,x86-qtopia提供了我們?cè)谥鳈C(jī)上開(kāi)發(fā)qtopia的軟件環(huán)境,開(kāi)發(fā)過(guò)wince的人都知道SDK的重要性,這里我們也可以把x86-qtopia理解為提供給我們的SDK或者說(shuō)模擬器,只不過(guò)它的功能還要大的多,你可以使用里面的工具設(shè)計(jì)圖形界面編譯程序,并在qvfb中運(yùn)行,它的存在就是為了方便我們開(kāi)發(fā)qtopia;arm-qtopia則是提供在目標(biāo)機(jī)上運(yùn)行軟件的編譯工具,但是一般地它不具有qvfb,所以這兩個(gè)文件夾需要結(jié)合起來(lái)使用,才能達(dá)到最佳效果。
下面我來(lái)談?wù)剎86-qtopia的編程步驟,在這里我采用了比較繁瑣的步驟,主要是講一下流程,后面會(huì)提到比較簡(jiǎn)捷的方法。
主機(jī)環(huán)境:RedHat9
編譯工具:arm-linux-gcc-4.3.2
進(jìn)入x86-qtopia,建立目標(biāo)文件夾,即存放工程文件,.cpp.h文件的文件夾
設(shè)置開(kāi)發(fā)環(huán)境,執(zhí)行命令 # source qtopia-2.2.0-FriendlyARM/setQpeEnv
創(chuàng)建工程 # progen -t app -o (工程名).pro
進(jìn)入qtopia-2.2.0-FriendlyARM/qt2/bin,啟動(dòng)Qt designer # ./designer,即可以進(jìn)行圖形界面的設(shè)計(jì)
將.ui文件存放在工程文件夾中
生成.h和.cpp文件,運(yùn)用.ui文件,# uic -o *.h *.ui # uic -o *.cpp -impl *.h *.ui
在.h和.cpp文件中添加需要的代碼
編寫(xiě)main.cpp
修改.pro文件,為其中的HEADERS= SOURCES= TARGET=添加文件,HEADERS指頭文件,若有多個(gè)用空格分隔SOURCES為源文件,TARGET為目標(biāo)文件,即最后生成的可執(zhí)行文件名
生成Makefile
(1)查看環(huán)境變量,# echo $TMAKEPATH 查看結(jié)尾是否為/qws/linux-generic-g++
(2)修改tmake/lib/qws/linux-generic-g++/tmake.conf將TMAKE_LINK=gcc和TMAKE_SHLIB=gcc改為=g++
(3)生成Makefile # tmake -o Makefile *.pro
(4)修改Makefile 為L(zhǎng)IBS=添加-lqtopia2 -lqtopia -lqpe
編譯 # make
運(yùn)行 # ./可執(zhí)行文件名 -qws(不可少)上面就是一般步驟,但是比較繁瑣,個(gè)人覺(jué)得程序設(shè)計(jì)的重點(diǎn)應(yīng)該放在對(duì).cpp和.h文件的編寫(xiě),以及調(diào)試中錯(cuò)誤的糾正所以下面我再把常用的,也是比較方便的方法介紹下
進(jìn)入x86-qtopia,建立工程目錄
將編寫(xiě)好的.cpp .h拷貝至工程目錄
產(chǎn)生工程文件 執(zhí)行命令 # qmake -project
修改.pro工程文件 在文件最后架上TARGET=可執(zhí)行文件名
拷貝x86-qtopia中例程hello中的腳本文件build至工程目錄,并執(zhí)行 # ./build,該腳本已經(jīng)將設(shè)置環(huán)境變量調(diào)用相應(yīng)庫(kù)生成Makefile,生成可執(zhí)行文件寫(xiě)入其中。
拷貝hello中的腳本文件run拷貝至工程目錄,修改最后一句話(huà)將路徑換成可執(zhí)行文件所在工程目錄即可,運(yùn)行程序 # ./run
對(duì)照兩種方法,會(huì)發(fā)現(xiàn)在下面這種方法中沒(méi)有了對(duì)圖形界面設(shè)計(jì)步驟,我個(gè)人認(rèn)為.ui文件并不重要,沒(méi)有.ui一樣可以編譯程序,它的出現(xiàn)只是方便設(shè)計(jì)者對(duì)圖形界面的布局。其實(shí)對(duì)于布局完全可以不用Qt Designer,完全可以用紙和筆來(lái)代替,在設(shè)計(jì)之前,將你的想法畫(huà)在紙上,并訂出相應(yīng)尺寸和位置,然后將其變成代碼就可以了,這樣自由度更大,我個(gè)人也推崇這種方法。
上面只介紹了x86上設(shè)計(jì)qtopia程序的方法,我將在后面和大家分享arm中開(kāi)發(fā)qtopia的一些心得,希望我寫(xiě)的這些對(duì)大家能有幫助。
小結(jié):在Mini2440上Qtopia應(yīng)用程序開(kāi)發(fā)步驟內(nèi)容介紹完了,都是一些實(shí)驗(yàn)心得,確實(shí)很值得一看,希望本文對(duì)你有幫助吧。