詳解 Arm linux QT 程序開(kāi)發(fā)流程
詳解 Arm linux QT 程序開(kāi)發(fā)流程是本文要介紹的內(nèi)容,不多廢話,先來(lái)看內(nèi)容。我們要開(kāi)發(fā)一個(gè)簡(jiǎn)單的QT程序,然后下載到arm開(kāi)發(fā)板上面。這里需要介紹幾個(gè)用到的軟件:
x86-qtopia,這個(gè)是PC下的一個(gè)qtopia,他自帶有個(gè)模擬器,可以模擬出arm開(kāi)發(fā)板的樣子出來(lái)。方便調(diào)試
arm-qtopia,這個(gè)主要是用來(lái)編譯,因?yàn)橐螺d到開(kāi)發(fā)板上,需要arm版的qtopia的庫(kù)文件,編譯后直接下載到開(kāi)發(fā)板運(yùn)行
以上兩個(gè)qtopia都要事先編譯好。
buildhost.sh,這個(gè)是在x86下對(duì)QT程序的編譯腳本。
buildarm.sh,這個(gè)是在arm下的編譯腳本
1、開(kāi)發(fā)QT程序,直接用designer
- /opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qt2/bin/designer main_form_base.ui
用x86下的designer來(lái)設(shè)計(jì)圖形界面,命名為main_form_base.ui
在此先省略QT編程過(guò)程。。。
2、編程完畢后,執(zhí)行buildhost.sh腳本,編譯它,會(huì)產(chǎn)生可執(zhí)行文件。
腳本內(nèi)容:
- #!/bin/sh
- source /opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/setQpeEnv
- qmake -o Makefile.host -spec qws/linux-generic-g++ *.pro
- make -f Makefile.host clean
- make -f Makefile.host
3、再到x86-qtopia目錄下,運(yùn)行模擬器。會(huì)出現(xiàn)一個(gè)qtopia界面
4、然后再運(yùn)行編譯生成的可執(zhí)行文件(這里需要一個(gè)相應(yīng)的run_x86_mycalc腳本)。
若在模擬器中出現(xiàn)我們編寫的軟件界面,運(yùn)行正常,說(shuō)明沒(méi)問(wèn)題??梢灾苯舆M(jìn)行下一步。
run_x86_mycalc腳本:
- # cd /opt/FriendlyArm/mini2440/x86-qtopia/mycalc (mycalc的程序目錄)
- # export QTDIR=/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/image/opt/Qtopia/
- # export QPEDIR=/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/image/opt/Qtopia/
- # export HOME=$QPEDIR/root/
- # export LD_LIBRARY_PATH=$QPEDIR/lib:$LD_LIBARAY_PATH
- # ./mycalc
5、再執(zhí)行buildarm.sh腳本,編譯它,會(huì)產(chǎn)生arm版本的可執(zhí)行文件。
腳本內(nèi)容:
- #!/bin/sh
- source /opt/FriendlyARM/mini2440/arm-qtopia/qtopia-2.2.0-FriendlyARM/setQpeEnv
- qmake -o Makefile.arm -spec qws/linux-generic-g++ *.pro
- make -f Makefile.arm clean
- make -f Makefile.arm
6、把這個(gè)可執(zhí)行文件復(fù)制到arm開(kāi)發(fā)板上面的/opt/Qtopia/bin目錄下(通過(guò)超級(jí)終端串口傳輸)
7、編寫run_mycalc執(zhí)行腳本,這樣才能直接運(yùn)行,(這里的run_mycalc名字可以自己改的)
在arm開(kāi)發(fā)板上面的/bin目錄下,vi run_mycalc
內(nèi)容:
- #!/bin/sh
- export TSLIB_TSDEVICE=/dev/touchscreen-1wire
- export TSLIB_CONFFILE=/etc/ts.conf
- export TSLIB_PLUGINDIR=/usr/lib/ts
- export TSLIB_CALIBFILE=/etc/pointercal
- export QTDIR=/opt/Qtopia
- export QPEDIR=/opt/Qtopia
- export PATH=$QTDIR/bin:$PATH
- export LD_LIBRARY_PATH=$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH
- export QWS_MOUSE_PROTO="TPanel:/dev/input/mice"
- export QWS_KEYBOARD=TTY:/dev/tty1
- export HOME=/root
- exec $QPEDIR/bin/qpe (qpe修改為存放在/opt/Qtopia/bin下面的可執(zhí)行程序名稱,這里就要修改為mycalc)
8、直接運(yùn)行run_mycalc
小結(jié):詳解 Arm linux QT 程序開(kāi)發(fā)流程的內(nèi)容介紹完了,希望本文能幫你解決問(wèn)題,如果需要更多的相資料,請(qǐng)參考編輯推薦!