2.交叉編譯Qt各種版本
1)交叉編譯Qtopia2.2.0,使用Arm-linux-gcc3.3.2
首先在myqt下建立dist目錄,dist裡面再建立include、lib兩個目錄.先要進行一些支援庫的交叉編譯。
zlib-1.2.3
$tar zxvf zlib-1.2.3.tar.gz
$ cd zlib-1.2.3/
$./configure --shared
$vi Makefile
對應行改為
CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc
LDSHARED=/usr/local/arm/3.3.2/bin/arm-linux-gcc -shared -Wl,-soname,libz.so.1
CPP=/usr/local/arm/3.3.2/bin/arm-linux-gcc -E
AR=/usr/local/arm/3.3.2/bin/arm-linux-ar rc
RANLIB=/usr/local/arm/3.3.2/bin/arm-linux-ranlib
$make
生成libz.so libz.so.1 libz.so.1.2.3
$cp libz.so* ../dist/lib/
$cp *.h ../dist/include/
$cd ..
然後在settings裡的Appearance settings中進行Fonts的選擇,在language中選擇Chinese即可。
e2fsprogs-1.38
$ tar zxfv e2fsprogs-1.38.tar.gz
$cd e2fsprogs-1.38
$export PATH=$PATH:/usr/local/arm/3.3.2/bin
$./configure --host=arm-linux CC=arm-linux-gcc --enable-elf-shlibs
(生成lib/libuuid.so *)
$cp lib/libuuid.so* ../dist/lib/
Libjpeg-6b
$cd jpeg-6b/
(export PATH=$PATH:/usr/local/arm/3.3.2/bin)
$./configure --host=arm-linux-gcc CC=arm-linux-gcc
$cp *.o ../dist/lib/
可以給qt-embedded添加好for arm的libjpeg庫.向目錄中也拷貝一份: /usr/local/arm/3.3.2/arm-linux/lib
拷貝 jconfig.h jmorecfg.h jpeglib.h 到 /usr/local/arm/3.3.2/arm-linux/include/
$sudo cp jconfig.h jmorecfg.h jpeglib.h /usr/local/arm/3.3.2/arm-linux/sys-include/
libpng-1.2.23
$tar zxvf libpng-1.2.33-no-config.tar.gz
$cd libpng-1.2.23/
$cp scripts/makefile.linux ./Makefile
改為
AR_RC=arm-linux-ar rc
CC=arm-linux-gcc
RANLIB=arm-linux-ranlib
ZLIBLIB=../zlib-1.2.3
ZLIBINC=../zlib-1.2.3
$cp libpng12.so ../dist/lib/libpng.so
$cp libpng12.so* ../dist/lib/
然後開始正式進行編譯qtopia-arm
$tar zxvf qtopia-free-src-2.2.0.tar.gz
$mv qtopia-free-2.2.0/ qtopia-arm
$cd qtopia-arm
$vi qtopia/mkspecs/qws/linux-arm-g++/qmake.conf
将此行
QMAKE_LIBS_QT = -lqte
修改為
QMAKE_LIBS_QT = -lqte -lpng -lz -luuid -ljpeg
$export QTDIR=$PWD/qt2
$export QPEDIR=/home/inno/myqt/qtopia-arm/qtopia
$export LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/lib:$LD_LIBRARY_PATH
$export TMAKEDIR=/home/inno/myqt/qtopia-arm/tmake
$export TMAKEPATH=$TMAKEDIR/lib/qws/linux-arm-g++
$cd qtopia/
$vim src/qt/qconfig-qpe.h
$加入:
$cp src/qt/qconfig-qpe.h ../qt2/src/tools/
$cd $QPEDIR/src/libraries/qtopia
$cp custom-linux-ipaq-g++.cpp custom-linux-arm-g++.cpp
$cp custom-linux-ipaq-g++.h custom-linux-arm-g++.h
$cd http://www.cnblogs.com/http://www.cnblogs.com/
$./configure -qte "-embedded -xplatform linux-arm-g++ -qconfig qpe -no-qvfb -depths 16 -system-jpeg -system-libpng -system-zlib -gif -thread -no-xft -release -I/home/inno/myqt/dist/include -L/home/inno/myqt/dist/lib -lpng -lz -luuid -ljpeg" -qpe "-xplatform linux-arm-g++ -edition pda -displaysize 480x272 -I/home/inno/myqt/dist/include -L/home/inno/myqt/dist/lib -prefix=/home/inno/myqt/dist/qtopia"
$make install
這樣你的qtopia鏡像檔案系統就在/home/inno/myqt/dist/qtopia下了。然後在dist下建立qt目錄,把qtopia- host/qtopia/image/opt/qt下的所有東西複制到qt這個建立的目錄下,這是為了安裝字型。把qtopia-host/qtopia 下的i18n目錄放在dist的qtopia下,這是為了放置翻譯檔案。
運作:使用NFS将檔案夾dist挂載到/mnt/下nfs上檔案系統後設定變量
export QTDIR=/mnt/dist/qt
export QPEDIR=/mnt/dist/qtopia
export QWS_MOUSE_PROTO=TPanel:/dev/ts0
export LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/lib:$LD_LIBRARY_PATH
設定好環境變量運作,
./qpe
選擇語言為Chinese(MainLand)然後在settings裡面的Apperance的Font裡指定simsun就可以限制正常的中文了,但是大标題的下邊會有黑條,英文的也是這樣,我也不清楚是怎麼回事。
2)Qt-embedded的交叉編譯
$tar –xzvf qt-embedded-free-3.3.8.tar.gz
$mv qt-embedded-free-3.3.8 qt-embedded-free-3.3.8-arm
$export QT2DIR=$PWD/qt3-x11
$export QTEDIR=$PWD/qt-embedded-free-3.3.8-arm
$cd $QTEDIR
首先修改 src/embedded/qmouselinuxtp_qws.cpp檔案,把"/dev/h3600_tsraw"改成 "/dev/touchscreen/0";然後修改src/embedded/qmouselinuxtp_qws.h檔案,增加兩個宏定義 "#define QT_QWS_IPAQ"、"#define QT_QWS_IPAQ_RAW" 這是相當關鍵的,否則可能觸摸屏不會動。
$export QTDIR=$QTEDIR
$export PATH=$QTDIR/bin:$PATH
$export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
$cp /usr/local/bin/uic tools/bin
$make clean
$./configure -embedded arm -no-xft -no-ipv6 -no-qvfb -depths 4,8,16,24,32 -no-cups -thread -qt-mouse-linuxtp -qt-gif
這步完成後,我們會在/$QTEDIR/lib/目錄下面看到libqte.so libqte.so.3 libqte.so.3.3 libqte.so.3.3.8這四個檔案,如果加入了-thread 選項,則會産生libqte-mt.so....我們可以使用file 指令來檢視這個庫檔案是否是我們需要的在開發闆上跑的庫。
有了這個庫以後我們就可以把它拷貝到我們的開發闆中相應的庫目錄下面。

<a href="http://home.cnblogs.com/u/gnuhpc/">gnuhpc</a>
<a href="http://home.cnblogs.com/u/gnuhpc/followees">關注 - 1</a>
<a href="http://home.cnblogs.com/u/gnuhpc/followers">粉絲 - 362</a>
<a>+加關注</a>
<a></a>
<b>最新IT新聞</b>:
<b>最新知識庫文章</b>:
最早在Blogger上寫部落格,後來Blogger全網被封K掉,而後在CSDN上寫過幾年部落格,後來CSDN更新部落格系統取消了API寫作的接口,于是逐漸将過去的博文搬家到部落格園。
<b>曾經在CSDN部落格排名中位列前一百,目前依然是....本部落格中所寫文字均為原創,網上注明gnuhpc,warmbupt,futuredaemon等文字均出自本人,符合創作共同協定,轉載請注明出處,謝謝!</b>
我的聯系方式:
<b>weibo: gnuhpc</b>
此地已經荒廢
<b></b>
<a><</a>
2012年1月
<a>></a>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/03.html">3</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/04.html">4</a>
5
6
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/07.html">7</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/08.html">8</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/09.html">9</a>
10
11
12
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/13.html">13</a>
14
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/15.html">15</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/16.html">16</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/17.html">17</a>
18
19
20
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01/21.html">21</a>
22
23
24
3
4
<a href="http://www.cnblogs.com/gnuhpc/p/4746984.html">1. 【轉】XPath 示例</a>
<a href="http://www.cnblogs.com/gnuhpc/p/4609592.html">2. 【redis使用全解析】常見運維操作</a>
<a href="http://www.cnblogs.com/gnuhpc/p/3947709.html">3. 在Python指令行和VIM中自動補全</a>
<a href="http://www.cnblogs.com/gnuhpc/p/3825064.html">4. 【工作常用代碼集】批量Telnet遠端端口</a>
<a href="http://www.cnblogs.com/gnuhpc/p/3293643.html">5. 【OpenWRT之旅】LuCI探究</a>
<a href="http://www.cnblogs.com/gnuhpc/p/3293204.html">6. 【OpenWRT之旅】如何自定義一個配置檔案的設定界面</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/02/20/2919340.html">7. 【系統工程師的自我修養】sed篇</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/01/04/2844303.html">8. 【Java學習筆記】如何寫一個簡單的Web Service</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/01/04/2844272.html">9. 【職場Tips】Language in IBM——獻給所有即将成為IBMer的童鞋</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/01/04/2844268.html">10. 【分布計算環境筆記】10 SOA、網格計算、雲計算與P2P技術</a>
<a href="http://www.cnblogs.com/gnuhpc/category/435017.html">C/C++開發(21)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349499.html">IBM TIM/TDS(24)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/347170.html">Java技術(73)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/592652.html">Python(2)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/348239.html">程式設計習作(13)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/347171.html">作業系統開發相關(18)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349108.html">作業系統使用相關(30)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/347172.html">個人随筆(2)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/347173.html">計劃與規劃(1)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349434.html">計算機視覺(73)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349122.html">面向對象設計(33)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/348079.html">其他技術(7)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/348082.html">嵌入式技術(12)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349118.html">軟體工程(2)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349111.html">生活(10)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/435881.html">資料庫開發與運維(15)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349489.html">網絡與通信技術(30)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/348061.html">學術研究(11)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/347459.html">英語學習(40)</a>
<a href="http://www.cnblogs.com/gnuhpc/category/349709.html">職場之路(9)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2015/08.html">2015年8月 (1)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2015/06.html">2015年6月 (1)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2014/08.html">2014年8月 (1)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2014/07.html">2014年7月 (1)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/08.html">2013年8月 (2)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/02.html">2013年2月 (1)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/01.html">2013年1月 (36)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/12.html">2012年12月 (265)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/11.html">2012年11月 (6)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/10.html">2012年10月 (43)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/07.html">2012年7月 (12)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/06.html">2012年6月 (19)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/04.html">2012年4月 (3)</a>
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/01.html">2012年1月 (36)</a>
積分 - 499557
排名 - 247
<a href="http://www.cnblogs.com/gnuhpc/archive/2013/01/04/2843655.html#3791081">1. Re:【Java學習筆記】繼承和多态</a>
--java大神帶小白
本文轉自gnuhpc部落格園部落格,原文連結:http://www.cnblogs.com/gnuhpc/archive/2012/01/08/2316292.html,如需轉載請自行聯系原作者
<a href="http://www.cnblogs.com/gnuhpc/archive/2012/07/02/2573806.html#3730548"></a>