自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Qt交叉編譯工具建立 上篇

移動(dòng)開發(fā)
本文介紹了Qt交叉編譯工具建立,主要介紹了安裝與建立Qt 桌面運(yùn)行環(huán)境,其他內(nèi)容想看本文指引。先來(lái)看本篇內(nèi)容。

本文主要內(nèi)容為編譯器的安裝,安裝與建立Qt 桌面運(yùn)行環(huán)境,Qt/E 的交叉編譯,建立本機(jī)Qtopia 虛擬平臺(tái),Qtopia2.1.1 在2410-上的移植,預(yù)備:編譯器安裝:
 
編譯器: arm-linux-gcc-3.4.1.tar.bz2(軟件從網(wǎng)上下載,如果不知道從什么地方下載,google就是了。)

把軟件arm-linux-gcc-3.4.1.tar.bz2拷貝到/usr/local下,在終端執(zhí)行如下命令安裝:

  1. tar -xjf arm-linux-gcc-3.4.1.tar.bz2 

生成的編譯工具在目錄/usr/local/arm/3.4.1/bin下,修改/etc/profile,增加如下一行。這可以讓我們直接運(yùn)行arm-linux-gcc,而不必將其絕對(duì)路徑都寫出來(lái),不過(guò)這得重新啟動(dòng)后才生效:

  1. pathmunge /usr/local/arm/3.4.1/bin 

硬件:UP-NETARM2410S

這一步,不一定要下載同樣的版本的交叉編譯工具,我用的是2.95.3,在執(zhí)行完這一步的時(shí)候,把環(huán)境變量加入到profile以后,注消一下,以便于以后的路徑里面是arm-linux-g++.
下面的安裝以及環(huán)境變量的設(shè)置,按照這里說(shuō)的進(jìn)行,但是有一點(diǎn)要注意,在configure的時(shí)候選擇large模式,要不可能會(huì)出現(xiàn)make出錯(cuò),可以試試,如果出錯(cuò)了,再make clean就是了.

我按照說(shuō)明,只進(jìn)行到了第二點(diǎn)結(jié)束,因?yàn)槲艺J(rèn)為,qtopia暫時(shí)沒有必要試用.

還有我覺得這個(gè)里面使用的版本太低,我會(huì)嘗試都使用qt3的版本的庫(kù)文件.

還有他在交叉生成編譯文件的時(shí)候,使用了progen和tmake,他的用法有點(diǎn)不對(duì),我覺得,我是這么用的:

假設(shè)hello工程有hello.h和hello.cpp兩個(gè)文件,先用progen生成pro文件,其實(shí)progen的意思就是pro文件的gernerate(生成)工具.

  1. progen -o hello.pro  
  2. tmake hello.pro -o Makefile  
  3. make 

中間可以查看一下makefile文件的內(nèi)容,注意,CXX=arm-linux-g++,LINK=arm-linux-g++.

再可以把make后的文件看看,file hello,系統(tǒng)會(huì)顯示這個(gè)是一個(gè)elf文件就是說(shuō)這個(gè)是一個(gè)arm上面執(zhí)行的文件!

交叉編譯生成可執(zhí)行文件的時(shí)候,也就是在操作(三)下面的第三點(diǎn)的時(shí)候,如果新開的一個(gè)終端,那么以前的定義的一些臨時(shí)的環(huán)境變量是消失了的,一般系統(tǒng)也帶有qt,而我們的嵌入式的qt版本比系統(tǒng)的低級(jí),最好是不要在系統(tǒng)路徑下面設(shè)置環(huán)境變量,tmake已經(jīng)加入了系統(tǒng)路徑了,所以我們要重新設(shè)置一下,或者說(shuō)定義一下.如下:

  1. echo $TMAKEPATH 

查看返回的結(jié)果的結(jié)尾字符是否是“……/qws/linux-arm-g++”,如果不是的話需要在命令行中重新設(shè)置TMAKEPATH

  1. export TMAKEPATH=/tmake 的安裝路徑(如$TMAKEDIR)/lib/qws/linux-arm-g++ 

我的系統(tǒng)就是:

  1. export TMAKEPATH=/gg/tmake-1.13/lib/qws/linux-arm-g++ 

再設(shè)置QTDIR和QTEDIR:

QTEDIR要設(shè)置成為QTE的文件夾,export QTEDIR=$PWD/qt-2.3.10-target,PWD是我所在的路徑,我的是/gg,也就是export QTEDIR=/gg/qt-2.3.10-target再export QTDIR=$QTEDIR就可以直接使用progen以及tmake工具了.以上是如何生成elf格式的文件,要生成主機(jī)上使用的.o文件怎么弄呢?

第一種方法:

首先安裝系統(tǒng)時(shí)候也安裝了高版本的qt,可以使用這個(gè)qt,用qmake工具,首先用qtdesigner創(chuàng)建一個(gè)pro文件和一些相應(yīng)的.h和.cpp文件,比如hello.cpp然后,qmake hello.pro,再make生成Makefile,再make成功的話就可以./hello了.

第二種方法:

就是用下面安裝的低級(jí)版本的qt庫(kù)來(lái)運(yùn)行,條件就是開始已經(jīng)安裝了這些庫(kù),有一點(diǎn)要注意的就是要按照安裝時(shí)候設(shè)置的路徑重新定義一下環(huán)境變量.否則會(huì)出錯(cuò)的.

當(dāng)然了這里也要用qtdesigner創(chuàng)建一個(gè)pro文件和一些相應(yīng)的.h和.cpp文件,然后用progen和tmake工具生成makefile!

還有一點(diǎn)要注意就是qvfb這個(gè)工具不一定要用tools里面的,可以在網(wǎng)上 新下載一個(gè)編譯之后運(yùn)行,可以把路徑加入系統(tǒng)路徑以后方便自己用.

安裝與建立Qt 桌面運(yùn)行環(huán)境

軟件:PC 機(jī)操作系統(tǒng)REDHAT LINUX 9.0 +MINICOM + ARM-LINUX 開發(fā)環(huán)境

  1. tmake-1.13.tar.gz qt-embedded-2.3.10-free.tar.gz  
  2. qt-x11-2.3.2 .tar.gz 

軟件從網(wǎng)上下載,如果不知道從什么地方下載,google就是了。
 
把本次實(shí)驗(yàn)用到的三個(gè)文件拷貝到/root/2410sQt目錄下,以下的步驟是假設(shè)你在/root/2410sQt 下操作的。
 
Qt/Embedded 平臺(tái)的搭建需要以下幾步:
 
第一步,解壓安裝包并設(shè)置環(huán)境變量

  1. tar –xzvf tmake-1.13.tar.gz  
  2. tar –xzvf qt-x11-2.3.2.tar.gz  
  3. tar –xzvf  
  4. qt-embedded-2.3.10-free.tar.gz  
  5. mv  qt-2.3.10 qt-2.3.10-host  
  6. export TMAKEDIR=$PWD/tmake-1.13  
  7. export QT2DIR=$PWD/qt-2.3.2  
  8. export QTEDIR=$PWD/qt-2.3.10-host 

環(huán)境變量的設(shè)置是非常重要的,它關(guān)系到能否正確的安裝及編譯這些安裝包.
 
注意: 在以下安裝中,make命令執(zhí)行前先執(zhí)行一下make clean命令.

第二步,編譯Qt/Embedded。
 
1. Build Qt2.3.2

 

  1. cd $QT2DIR  
  2. export TMAKEPATH=$TMAKEDIR/lib/linux-g++  
  3. export QTDIR=$QT2DIR  
  4. export PATH=$QTDIR/bin:$PATH  
  5. export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH  
  6. make clean  
  7. ./configure -no-xft 

這個(gè)地方要注意 ,large 模式

  1. make  
  2. mkdir $QTEDIR/bin  
  3. cp bin/uic $QTEDIR/bin/ 

2. Build Qvfb

  1. export TMAKEPATH=$TMAKEDIR/lib/linux-g++  
  2. export QTDIR=$QT2DIR  
  3. export PATH=$QTDIR/bin:$PATH  
  4. export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH  
  5. cd $QTEDIR/tools/qvfb  
  6. make  clean  
  7. tmake -o Makefile qvfb.pro  
  8. make  
  9. mv qvfb $QTEDIR/bin/ 

這一步build qvfb 并建立了從Qt/Embedded 2.3.10 到Qt 2.3.2 的靜態(tài)庫(kù)的鏈接。其中qvfb 工具用來(lái)生成Virtual framebuffer,這是一個(gè)非常有用的工具,它可以模擬在開發(fā)板上的顯示情況,如果在Virtual framebuffer 中運(yùn)行沒有問題的話,可以直接通過(guò)交叉編譯在開發(fā)板上運(yùn)行。
 
3. Build Qt/Embedded

  1. cd $QTEDIR  
  2. export TMAKEPATH=$TMAKEDIR/lib/qws/linux-x86-g++  
  3. export QTDIR=$QTEDIR  
  4. export PATH=$QTDIR/bin:$PATH  
  5. export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH  
  6. make clean  
  7. ./configure -no-xft -qvfb -depths 4,8,16,32  
  8. make 

第三步 查看運(yùn)行結(jié)果

如果上面各步都能夠成功的編譯通過(guò),下面就可以通過(guò)運(yùn)行Qt/Embedded 自帶的demo 來(lái)查看運(yùn)行結(jié)果。

在Virtual framebuffer 上運(yùn)行:

  1. export QTDIR=$QTEDIR  
  2. export PATH=$QTEDIR/bin:$PATH  
  3. export LD_LIBRARY_PATH=$QTEDIR/lib:$QT2DIR/lib:$LD_LIBRARY_PATH  
  4. cd $QTEDIR/examples/launcher  
  5. qvfb -width 640 -height 480 &  
  6. sleep 10  
  7. ./launcher -qws 

小結(jié):本篇內(nèi)容介紹完了,想要繼續(xù)深入,請(qǐng)參考 Qt交叉編譯工具建 中篇 ,最后希望本文對(duì)你有幫助!

責(zé)任編輯:zhaolei 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-06-23 18:04:42

Qt Embedded

2011-06-23 18:16:59

Qt Qtopia

2011-06-28 13:47:37

Embedded QT ARM

2011-07-04 15:13:31

QT MPlayer 移植

2011-06-13 14:49:57

Qt Designer

2010-02-02 15:13:42

Linux ARM

2011-07-05 18:32:52

QT 信號(hào) 機(jī)制

2011-07-01 14:14:34

Qt 事件

2011-06-09 16:47:56

Qt 嵌入式

2011-06-17 16:47:12

Qt Eclipse Windows

2011-06-17 13:18:17

Qt 文件

2021-05-13 09:45:53

GolangLinux交叉編譯

2011-06-22 14:30:44

QT 多線程 線程

2011-06-27 13:32:21

Qt 數(shù)據(jù)庫(kù) QSqlQueryM

2011-06-30 10:09:26

QT Graphics View

2011-06-30 15:51:39

2011-06-21 15:48:41

2011-06-27 10:15:22

Qt 網(wǎng)絡(luò) TCP

2011-06-21 16:51:21

Qt 靜態(tài) 編譯

2011-06-08 15:27:24

QT QT 4.5 編譯
點(diǎn)贊
收藏

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