Qt交叉編譯工具建立 下篇
繼續(xù)上篇文章介紹 Qt交叉編譯工具建立 中篇 ,Qtopia2.1.1 在2410-S 上的移植是本文要介紹的內(nèi)容,來看內(nèi)容。
 
軟件:Redhat Linux9.0 for PC + minicom + Embeded Linux for 2410 
- e2fsprogs-libs-1.37.tar.gz,libjpeg-iwmmxt.tar.bz2,qt-embedded-2.3.10-free.tar.gz
 - ,qtopia-free-source-2.1.1.tar.bz2,qt-x11-2.3.2.tar.gz,qt-x11-free-3.3.4.tar.bz2,
 - tmake-1.13.tar.gz,tslib.tar.gz,buildqtopia.sh
 
1.實(shí)驗(yàn)可以分為以下幾個步驟進(jìn)行:
(1) 在裝有l(wèi)inux 的pc 機(jī)上安裝交叉編譯環(huán)境。安裝光盤時所安裝的編譯器版本較低,不能正常編譯QT程序,所以編譯前需要安裝Qt/tools/arm-linux-gcc-3.4.1.tar.bz2,并在/root/.bash_profile中修改編譯器搜索路徑。
(2) 編譯庫文件:
(3) 編譯qt-x11-2.3.2:
(4) 編譯安裝qt-embedded-2.3.2
(5)編譯安裝QTOPIA
(6) 將需要拷貝到開發(fā)板上的文件整理到一個單獨(dú)的文件夾里面
在本次實(shí)驗(yàn)中,buildqtopia.sh文件已為大家做好了以上幾步,我們可以直接運(yùn)行該文件進(jìn)行編譯。大家可以分析buildqtopia.sh 內(nèi)容,掌握編譯的步驟。
 
2. 編譯步驟:
- cd src
 - ./buildqtopia.sh
 
當(dāng)編譯完成后,在src/qtopia-free-2.1.1/image/opt/Qtopia 下是編譯完成的Qtopia 桌面環(huán)境。
說明:在編譯完成后,src 下的各個目錄對應(yīng)如下軟件包:
e2fsprogs-libs-1.37 ext2 文件系統(tǒng)工具包,Qtopia 用到了其中的libuuid
e2fs-install ext2 工具包編譯結(jié)果
jpeg-6b jpeg 解碼庫
jpeg-install jpeg 編譯結(jié)果
tslib 觸摸屏工具包
tslib-install 觸摸屏工具包編譯結(jié)果
tmake-1.13 tmake 工具,編譯Qtopia 時需要使用
qt-2.3.2 Qt/X11-2.3.2 及編譯結(jié)果, 編譯Qtopia 時需要使用其中的工具
qt-x11-free-3.3.4 Qt/X11-3.3.4 及編譯結(jié)果,編譯Qtopia 時需要使用其中的工具
qt-2.3.10 Qt/Embedded 2.3.10 及編譯結(jié)果
qtopia-free-2.1.1 Qtopia 2.1.1 及編譯結(jié)果
 
3. 安裝步驟:
(1)Qtopia
- cd src/qtopia-free-2.1.1/image/opt/
 - tar cvjf /tmp/qtopia-install.tar.bz2 Qtopia
 
將/tmp/qtopia-install.tar.bz2 下載到目標(biāo)機(jī),并解壓縮到某個目錄,假設(shè)為/mnt/yaffs。
(2)相關(guān)文件
將src/qtopia.sh 下載到目標(biāo)機(jī)的/usr/bin 目錄下.將src/e2fs-install/lib/libuuid.so*下載到目標(biāo)機(jī)的/usr/lib 目錄下.將src/jpeg-install/lib/libjpeg.so*下載到目標(biāo)機(jī)的/usr/lib 目錄下
(3)目標(biāo)機(jī)上的處理在目標(biāo)機(jī)上執(zhí)行:
- cd /usr
 - ln -s /mnt/yaffs/Qtopia qpe
 - chmod +x /usr/bin/qtopia.sh
 
注: 光盤中沒有提供qtopia.sh文件,下面是qtopia.sh文件
- //qtopia.sh
 - #!/bin/sh
 - export QTDIR=/usr/qpe
 - export QPEDIR=/usr/qpe
 - export KDEDIR=/usr/qpe
 - export TSLIB_TSDEVICE=/dev/input/event0
 - export TSLIB_CONFFILE=/tmp/ts.conf
 - export TSLIB_CONSOLEDEVICE=none
 - export TSLIB_CALIBFILE=/tmp/ts-calib.conf
 - export
 - TSLIB_PLUGINDIR=/usr/qpe/lib
 - export QT_TSLIBDIR=/usr/qpe/lib/
 - export
 - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/qpe/lib/
 - export QWS_SIZE=640x480
 - export
 - QWS_MOUSE_PROTO="TPanel:/dev/input/event0 USB"
 - export LANG=zh_CN
 - insmod
 - /mnt/yaffs/touchscreen/ts-uptech.o
 - cp /usr/qpe/etc/ts.conf /tmp
 - cd /usr/qpe/bin/
 - if [ "$1" = "c" ]; then
 - ./ts_calibrate
 - fi
 - if [ -f "$TSLIB_CALIBFILE" ]; then
 - ./qpe &>/dev/null
 - else
 - ./ts_calibrate
 - ./qpe &>/dev/null
 - fi
 - clear
 
小結(jié):關(guān)于Qt交叉編譯工具建立的內(nèi)容介紹完了,如果哦還有什么不明白的話,請參考編輯推薦。















 
 
 
 
 
 
 