成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

深度解析 Qt 4.5.3 移植全過程

移動開發(fā)
本文介紹的是Qt 4.5.3 移植全過程,QT 4.5是開跨平臺GUI應(yīng)用程序的理想選擇,先來看內(nèi)容。

Qt 4.5.3 移植全過程是本文要介紹的內(nèi)容,在概述也提到了QT 4.5是開跨平臺GUI應(yīng)用程序的理想選擇,那么在本文主要是講開發(fā)環(huán)境,先來看本文。

1、安裝交叉編譯環(huán)境

(1)下載arm-linux-gcc-3.4.1.tar.bz2(建議用的這個版本的,有些低版本的交叉編譯工具在編譯時會出錯)

arm-linux-gcc-3.4.1.tar.bz2 的下載地址如下:

http://www.handhelds.org/download/projects/toolchain/arm-linux-gcc-3.4.1.tar.bz2

(2)解壓 arm-linux-gcc-3.4.1.tar.bz2

  1. #tar -jxvf arm-linux-gcc-3.4.1.tar.bz2  

解壓過程需要一段時間,解壓后的文件形成了 usr/local/ 文件夾,進(jìn)入該文件夾,將arm文件夾拷貝到/usr/local/下

  1. # cd usr/local/   
  2. #cp -rv arm /usr/local/  

現(xiàn)在交叉編譯程序集都在/usr/local/arm/3.4.1/bin下面了

(3)修改環(huán)境變量,把交叉編譯器的路徑加入到PATH。(有三種方法,這里只寫一種)

  1. # vi ~/.bashrc  

在最后加上:

  1. export PATH=$PATH:/usr/local/arm/3.4.1/bin  

(4)立即使新的環(huán)境變量生效,不用重啟電腦

  1. #source ~/.bashrc  

(5)檢查是否將路徑加入到PATH:

  1. # echo $PATH  

顯示的內(nèi)容中有/usr/local/arm/bin,說明已經(jīng)將交叉編譯器的路徑加入PATH。至此,交叉編譯環(huán)境安裝完成。

(6)測試是否安裝成功

  1. # arm-linux-gcc -v  

上面的命令會顯示arm-linux-gcc信息和版本,這是我顯示的信息:

  1. Reading specs from /usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/specs   
  2. Configured with: /work/crosstool-0.27/build/arm-linux/gcc-3.4.1-glibc-2.3.2/gcc-3.4.1/configure --target=arm-linux --host=i686-host_pc-linux-gnu   
  3. --prefix=/usr/local/arm/3.4.1 --with-headers=/usr/local/arm/3.4.1/arm   
  4. -linux/include --with-local-prefix=/usr/local/arm/3.4.1/arm-linux --disable   
  5. -nls --enable-threads=posix --enable-symvers=gnu --enable-__cxa_atexit --enable- languages=c,c++ --enable-shared --enable-c99 --enable-long-long   
  6. Thread model: posix   
  7. gcc version 3.4.1  

到這里就成功安裝好了交叉編譯環(huán)境

2、安裝qt-x11

進(jìn)入下載頁面:選擇Download Qt libraries 4.5 for Linux/X11(120 Mb)

  1. # aptitude install libxtst-dev   
  2. # tar -zxvf qt-x11-opensource-src-4.5.3.tar.gz   
  3. # cd qt-x11-opensource-src-4.5.3   
  4. # ./configure   
  5. # make   
  6. # make install  

qt-x11 被安裝到此目錄下/usr/local/Trolltech/Qt-4.5.3

編譯qvfb:

  1. # cd qt-x11-opensource-src-4.5.3/tools/qvfb   
  2. # make  

至此,qt-x11安裝完畢完畢

#p#

3、安裝qt-embedded

選擇支持arm的體系結(jié)構(gòu)

  1. # tar -zxvf qt-embedded-linux-opensource-src-4.5.3.tar.gz   
  2. # cd qt-embedded-linux-opensource-src-4.5.3   
  3. #./configure -embedded arm -xplatform qws/linux-arm-g++ -no-qt3support -qt-mouse-linuxtp(我自己的設(shè)置,你可以通過查看./configure -help來設(shè)置)   
  4. #make   
  5. #make install  

qt-embeded 被安裝在這個目錄下/usr/local/Trolltech/QtEmbedded-4.5.3-arm 或者是/usr/local/Trolltech/QtEmbedded-4.5.3-generic

一般在/usr/local/Trolltech/QtEmbedded-4.5.3-arm

這里你可以新建一個set-env.sh文件

把下面復(fù)制到文件中

  1. export QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.3-arm   
  2. export PATH=/usr/local/Trolltech/QtEmbedded-4.5.3-arm/bin:$PATH   
  3. exportLD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.3-arm/lib:$LD_LIBRARY_PATH  

每次用的時候進(jìn)行設(shè)置

  1. #. set-env.sh   
  2. 或者是  
  3.  source set-env.sh  

安裝qt-embed請參考我的這個帖子:http://www.qtcn.org/bbs/read.php?tid=22600

4、移植到開發(fā)板

下面通過NFS方式來測試是否成功(你必須提前配置好nfs)

先準(zhǔn)備好2個nfs目錄,取名為nftsroot

一個是用來備用的,取名為fonts

(1)準(zhǔn)備庫和字體

  1. #cp -a /usr/local/Trolltect/QtopiaCore-4.3.0-arm/lib /nfsroot  

然后在usr/local/Trolltect/QtopiaCore-4.3.0-arm里面收索到這些庫

  1. librt.so,librt.so.1,libstdc++.so,libstdc++.so.6,libstdc++.so.6.0.1  

筆者就是在運(yùn)行時就提示要這些庫,所有大家還是先準(zhǔn)備好來,然后復(fù)制到/nfsroot/lib里

  1. #ls /nfsroot/lib   
  2. fonts libQtScript.prl libQtSvg.so.4.5.3   
  3. libgcc_s.so libQtScript.so libQtTest.la   
  4. libgcc_s.so.1 libQtScript.so.4 libQtTest.prl   
  5. libQtCore.la libQtScript.so.4.5 libQtTest.so   
  6. libQtCore.prl libQtScript.so.4.5.3 libQtTest.so.4   
  7. libQtCore.so libQtScriptTools.la libQtTest.so.4.5   
  8. libQtCore.so.4 libQtScriptTools.prl libQtTest.so.4.5.3   
  9. libQtCore.so.4.5 libQtScriptTools.so libQtXml.la   
  10. libQtCore.so.4.5.3 libQtScriptTools.so.4 libQtXml.prl   
  11. libQtGui.la libQtScriptTools.so.4.5 libQtXml.so   
  12. libQtGui.prl libQtScriptTools.so.4.5.3 libQtXml.so.4   
  13. libQtGui.so libQtSql.la libQtXml.so.4.5   
  14. libQtGui.so.4 libQtSql.prl libQtXml.so.4.5.3   
  15. libQtGui.so.4.5 libQtSql.so librt-2.3.2.so   
  16. libQtGui.so.4.5.3 libQtSql.so.4 librt.so   
  17. libQtNetwork.la libQtSql.so.4.5 librt.so.1   
  18. libQtNetwork.prl libQtSql.so.4.5.3 libstdc++.so   
  19. libQtNetwork.so libQtSvg.la libstdc++.so.6   
  20. libQtNetwork.so.4 libQtSvg.prl libstdc++.so.6.0.1   
  21. libQtNetwork.so.4.5 libQtSvg.so pkgconfig   
  22. libQtNetwork.so.4.5.3 libQtSvg.so.4   
  23. libQtScript.la libQtSvg.so.4.5  

當(dāng)然這些庫文件不是每個都需要,用戶可以根據(jù)自己的應(yīng)用來選擇

#p#

接下來將開發(fā)板和主機(jī)通過網(wǎng)線連接起來,并在開發(fā)板里進(jìn)行mount

  1. #mount -t nfs 192.168.0.10:/nfsroot /mnt -o nolock   
  2. #ls /mnt   
  3. lib  

接下來事字體(在lib目錄的fonts),字體比較麻煩,

根據(jù)文檔說明,Qtopia默認(rèn)查找字體的目錄是/usr/local/Trolltech/QtEmbedded-4.5.3/lib/fonts

我們有兩種方式來掛載字體庫。

第一種:

  1. #mount -t ramfs ramfs /usr   
  2. #cd /usr   
  3. #mkdir local && mkdir local/Trolltech   
  4. #ln -s /mnt local/Trolltech/QtEmbedded-4.5.3-arm   
  5. #ls /usr/local/Trolltech/QtEmbedded-4.5.3-arm/lib/fonts  

這樣我們就配置好了。

如果上一種方法不行,看下面這種,一定可以!

第二種:

首先用到剛才的備用的nfs目錄 fonts(看名字就曉得用來掛載字體庫的)

  1. #cp -arf /usr/local/Trolltect/QtopiaCore-4.3.0-arm/lib/fonts /fonts  

在開發(fā)板里

  1. #mount -t nfs 192.168.0.10:/fonts /usr/local/Trolltech/QtEmbedded-4.5.3-arm -o nolock  

這樣就把字體庫鏈接到 /usr/local/Trolltech/QtEmbedded-4.5.3/lib/fonts目錄來了

第二種方法是我同學(xué)想出來的,很不錯吧,他的博客是:http://hi.baidu.com/armlinuxhouse/blog/item/c2fb91ca42b0811d7f3e6f10.html 里面有很多好的文章!

5、交叉編譯Hello World 程序

首先寫一個hello.cpp的程序

  1. #qmake -project   
  2. #qmake  

得到一個hello的arm可執(zhí)行程序(通過file命令來查看它所屬的cpu)

并將該

  1. #cp hello /nfsroot  

然后在超級終端里運(yùn)行

  1. #export LD_LIBRARY_PATH=/mnt/lib:$LD_LIBRARY_PATH   
  2. #cd /mnt   
  3. #./hello -qws  

這樣就能看到你的運(yùn)行程序了!

小結(jié):Qt 4.5.3 移植全過程介紹完了,希望本篇文章對你有幫助!

責(zé)任編輯:zhaolei 來源: CSDN博客
相關(guān)推薦

2011-09-06 15:38:20

QT安裝

2009-06-10 16:55:42

cygwin netb安裝

2017-04-25 18:03:11

Caffe深度學(xué)習(xí)框架

2010-02-22 13:38:50

Python解析器

2010-06-11 13:15:07

UML軟件

2011-02-22 10:46:02

Samba配置

2009-12-08 17:56:16

WCF配置

2011-04-18 15:56:10

軟件測試

2009-04-13 12:37:18

2011-01-21 17:51:52

2011-07-02 13:42:24

Qt 移植

2010-07-07 09:11:31

Eclipse UML

2011-06-29 10:46:01

Qt Eembedded Linux

2010-03-01 17:01:03

Python編程技巧

2010-03-10 13:24:45

Zend Debugg

2010-11-19 10:11:49

Oracle物化視圖

2012-11-06 10:19:18

Java自定義加載Java類

2010-06-17 13:10:09

Linux Grub修

2010-07-21 14:51:19

telnet-serv

2019-05-14 15:27:31

MongoDB自動備份數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 成人在线免费网站 | 亚洲精品日韩精品 | 综合久 | 亚洲综合天堂 | 成人在线视频免费观看 | 精品一区二区三区四区在线 | 中文字幕欧美一区二区 | 日韩久久久久 | 日韩一区二区在线播放 | 日韩精品色网 | 国内精品视频一区二区三区 | 久久一区二区视频 | 在线观看国产h | 91一区二区三区在线观看 | 国产一区在线免费观看 | 色呦呦网站 | 亚洲一区不卡 | 国产91色在线 | 亚洲 | 18av在线播放 | 久久精品亚洲精品国产欧美 | 欧美电影免费观看 | 久久久爽爽爽美女图片 | 日韩毛片免费视频 | 一二三区av| 狠狠色综合久久丁香婷婷 | 91成人 | 在线成人免费视频 | 台湾佬成人网 | 国产99视频精品免费视频7 | 国产黄色小视频 | 超碰导航 | 国产欧美日韩精品在线观看 | 中文字幕亚洲欧美日韩在线不卡 | 国产精品久久久久久久久图文区 | 国产成人精品一区二区三区在线 | 亚洲成人免费 | 成人av在线播放 | 午夜免费在线电影 | 免费中文字幕日韩欧美 | 天天影视网天天综合色在线播放 | 九九精品在线 |