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

詳解QT安裝全過程

移動開發(fā)
QT安裝全過程是本文要介紹的內(nèi)容,主要是來了解并學(xué)習(xí)QT的應(yīng)用,本文主要是來學(xué)習(xí)QT安裝過程,具體內(nèi)容的實現(xiàn)來看本文詳解。

QT安裝全過程是本文要介紹的內(nèi)容,主要是來了解并學(xué)習(xí)QT的應(yīng)用,本文主要是來學(xué)習(xí)QT安裝過程,具體內(nèi)容的實現(xiàn)來看本文詳解。

一、qt的源碼編譯

1、編譯觸摸屏軟件tslib

解壓tslib-1.4.tar.gz

  1. Tar-zxvftslib-1.4.tar.gz-C/usr/local  
  2. cdtslib  
  3. apt-getinstalllibtool  
  4. apt-getinstallautoconf  
  5. apt-getinstallg++ 

在tslib目錄下

  1. ./autogen.sh  
  2. CC=arm-linux-gcc  
  3. ####echo"ac_cv_func_malloc_0_nonnull=yes">arm-linux.cache//###表示注釋掉了,第三句是前兩句的結(jié)合  
  4. ####./configure--prefix=/opt/ts/--host=arm-linux--cache-file=arm-linux.cache  
  5. ./configure--prefix=/opt/ts/--host=arm-linuxac_cv_func_malloc_0_nonnull=yes 

打開tests/ts_calibrate.c,修改兩個open,加上第三個參數(shù)0//atline227229

  1. make  
  2. makeinstall 

2、安裝qt--X11

  1. apt-getinstalllibX11-devlibXext-devlibXtst-dev  
  2. apt-getinstallxorg-dev 

解壓tarzxvfqt-everywhere-opensource-src-4.6.3.tar.gz-C/usr/local/

  1. mvqt-everywhere-opensource-src-4.6.3qt-everywhere-opensource-src-4.6.3-x11  
  2. ./configure-nomakeexamples-nomakedemos  
  3. make&&makeinstall 

該過程會出現(xiàn)讓你選擇commercial或者open版本==》輸入o

然后詢問是否接受license==》輸入yes

  1. make&&makeinstall 

//三個小時左右,該干嘛干嘛去

3、安裝qt--x86

  1. #tarxzvfqt-everywhere-opensource-src-4.6.3.tar.gz-C/usr/local  
  2. #mvqt-everywhere-opensource-src-4.6.3qt-everywhere-opensource-src-4.6.3-x86  
  3. #cdqt-everywhere-opensource-src-4.6.3-x86  
  4. #./configure-prefix/usr/local/Trolltech/Qt-4.6.3-x86-nomakeexamples-nomakedemos  
  5. -nomakedocs-nomaketools-embeddedx86-qvfb  
  6. #make&&makeinstall 

4、安裝qt--arm

  1. ./configure-prefix/usr/local/Trolltech/Qt-4.6.3-arm-release-shared-fast-xplatformqws/linux  
  2. -arm-g++-embeddedarm-depths16-no-qvfb-no-qt3support-qt-sql-sqlite-qt  
  3. -zlib-qt-libpng-qt-freetype-qt-mouse-tslib-no-mouse-pc-no-mouse-linuxtp  
  4. -nomakeexamples-nomakedemos-nomakedocs-nomaketools-I/opt/ts/include-L/opt/ts/lib 

有錯,使用下面的

  1. ./configure\  
  2. -prefix/usr/local/Trolltech/Qt-4.6.3-arm\  
  3. -release-shared-fast\  
  4. -xplatformqws/linux-arm-g++-embeddedarm\  
  5. -depths16-no-qvfb\  
  6. -no-qt3support-qt-sql-sqlite-qt-zlib-qt-libpng-qt-freetype\  
  7. -qt-mouse-tslib-no-mouse-pc-no-mouse-linuxtp\  
  8. -nomakeexamples-nomakedemos-nomakedocs-nomaketools\  
  9. -I/opt/ts/include-L/opt/ts/lib 

執(zhí)行完configure命令之后,還需要修改三個文件:

  1. cdqt-embeded-opensource-src-4.6.3-arm 

1)該目錄下/src/3rdparty/freetype/include/freetype/config/ftconfig.h330行

  1. "orr%0,%0,%2,lsl#16\n\t"/*%0|=%2<<16*/  
  2. //原來:"orr%0,%2,lsl#16\n\t" 

2)/src/3rdparty/webkit/WebCore/Makefile

14行和15行,分別在-fPIC$(DEFINES)之前加入-D__ARM_ARCH_4T__(即CFLAGS/CXXFLAGS)

3) /src/script/Makefile

14行和15行-D__ARM_ARCH_4T__(同上)

  1. make&&makeinstall 

二、環(huán)境搭建(Trolltech)

1、設(shè)置環(huán)境變量Qt-4.6.3

進入/usr/local/Trolltech/Qt-4.6.3目錄

visetenv.sh或者sudogeditsetenv.sh

在文件中加入

  1. PATH=/usr/local/Trolltech/Qt-4.6.3/bin:$PATH  
  2. LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.6.3/lib:$LD_LIBRARY_PATH 

保存退出

  1. chmod777setenv.sh 

2、設(shè)置環(huán)境變量Qt-4.6.3-x86

進入/usr/local/Trolltech/Qt-4.6.3-x86目錄

visetenv.sh或者sudogeditsetenv.sh

在文件中加入

  1. QTEDIR=/usr/local/Trolltech/Qt-4.6.3-x86  
  2. PATH=/usr/local/Trolltech/Qt-4.6.3-x86/bin:$PATH  
  3. LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.6.3-x86/lib:$LD_LIBRARY_PATH 

保存退出

  1. chmod777setenv.sh 

3、設(shè)置環(huán)境變量Qt-4.6.3-arm

進入/usr/local/Trolltech/Qt-4.6.3-arm目錄

visetenv.sh或者sudogeditsetenv.sh

在文件中加入

  1. QTEDIR=/usr/local/Trolltech/Qt-4.6.3-arm  
  2. PATH=/usr/local/Trolltech/Qt-4.6.3-arm/bin:$PATH  
  3. LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.6.3-arm/lib:$LD_LIBRARY_PATH 

保存退出

  1. chmod777setenv.sh 

三、編譯qvfb

  1. cdqt-everywhere-opensource-4.6.3-x11/tools/qvfb  
  2. #####/usr/local/qt-everywhere-opensource-src-4.6.3-x11/tools/qvfb  
  3. make 

--會在qt-everywhere-opensource-4.6.3-x11/bin下生成qvfb,

我們將它copy至/usr/local/Trolltech/Qt-4.6.3-x86/bin下

  1. cpqvfb/usr/local/Trolltech/Qt-4.6.3-x86/bin 

運行測試()

運行x86下setenv.sh腳本文件。sourcesetenv.sh(word里大寫S不對)命令行輸入qvfb&(&后臺運行)

對Qtcreator工程文件qmake文件名.pro然后make生成可執(zhí)行文件

  1. ./可執(zhí)行文件-qws  
  2. (示例文件可以去qt-everywhere-opensource-4.6.3-x86/examples或者demos里面找) 

四、安裝QTCreator

  1. chmod777qt-sdk-linux-x86-opensource_2010.02.bin  
  2. cpqt-sdk-linux-x86-opensource_2010.02.bin/opt  
  3. ./qt-sdk-linux-x86-opensource_2010.02.bin默認安裝即可 

六、在ubuntu中安裝NFS服務(wù),在開發(fā)內(nèi)核和文件系統(tǒng)時很方便,可以直接采用NFS啟動內(nèi)核和文件系統(tǒng)。安裝如下:

1、安裝

#apt-getinstallnfs-kernel-server

2、將NFS端口是否打開

  1. #netstat-tl 

若NFS端口處于LISTEN狀態(tài),則打開

3、配置NFS服務(wù)器

  1. #vim/etc/exports 

在***一行加入:/work*(rw,sync,no_root_squash)其中:/work為共享目錄,*為任意IP地址都可以訪問,no_root_squash表示任意用戶都可以訪問

4、重啟NFS服務(wù)

  1. #/etc/init.d/nfs-kernel-serverrestart 

5、查看NFS服務(wù)器當前的工作狀態(tài)

#/etc/init.d/nfs-kernel-serverstatus

若顯示running則工作正常

安裝結(jié)束

#p#

五、ARM板上配置環(huán)境:(板子和電腦之間)

編輯目標環(huán)境下(/utulinux2.6.24/s3c2440_recover/etc)的/etc/profile,在文件后面添加如下內(nèi)容:(和ppt上的有少許區(qū)別,主要是路徑上)

  1. exportLD_LIBRARY_PATH=/lib:$LD_LIBRARY_PATH  
  2. exportQTDIR=/usr/local/Trolltech/Qt-4.6.3-arm  
  3. exportQPEDIR=$QTDIR  
  4. exportT_ROOT=/opt/ts  
  5. exportPATH=$T_ROOT/bin:$PATH  
  6. exportLD_LIBRARY_PATH=$T_ROOT/lib:$QTDIR/lib:$LD_LIBRARY_PATH  
  7. exportTSLIB_CONSOLEDEVICE=none 
  8. exportTSLIB_FBDEVICE=/dev/fb0  
  9. exportTSLIB_TSDEVICE=/dev/event0  
  10. exportTSLIB_PLUGINDIR=$T_ROOT/lib/ts  
  11. exportTSLIB_CONFFILE=$T_ROOT/etc/ts.conf  
  12. exportTSLIB_CALIBFILE=/etc/pointercal  
  13. exportQWS_KEYBOARD=USB:/dev/input/event1  
  14. exportQWS_MOUSE_PROTO=Tslib:/dev/event0  
  15. exportQWS_DISPLAY=LinuxFb:mmWidth45:mmHeight60:0  
  16. exportQWS_SIZE=320x240 

六.在目標環(huán)境中建立與編譯QT-arm一樣的路徑:(目標路徑/utulinux2.6.24/s3c2440_recover)

  1. mkdir/usr/local/Trolltech/Qt-4.6.3-arm  
  2. cd/usr/local/Trolltech/Qt-4.6.3-arm  
  3. mkdirlib/  
  4. mkdirlib/fonts/ 

把以下的庫文件從編譯主機中的lib復(fù)制目錄中的四個庫文件復(fù)制到目標板的/usr/local/Qt-4.6.3-arm/lib

  1. libQtCore.so.4.6.3  
  2. libQtGui.so.4.6.3  
  3. libQtNetwork.so.4.6.3  
  4. libQtSql.so.4.6.3 

為每個庫文件創(chuàng)建3個連接:*.so,*.so.4,*.so.4.6

  1. ln–slibQtCore.so.4.6.3libQtCore.so  
  2. ln–slibQtCore.so.4.6.3libQtCore.so.4  
  3. ln–slibQtCore.so.4.6.3libQtCore.so.4.6 

(重復(fù)其余三個)

常用字庫文件從/usr/local/Trolltech/Qt-4.6.3-arm/lib/fonts/復(fù)制到目標板的

  1. /utulinux2.6.24/s3c2440_recover/usr/local/Trolltech/Qt-4.6.3-arm/lib/fonts  
  2. cp-rf/usr/local/Trolltech/Qt-4.6.3-arm/lib/fonts/\/utulinux2.6.24/s3c2440_recover/usr/local/Trolltech/Qt-4.6.3-arm/lib 

七、

1:將/opt下交叉編譯好的tslib文件cp到開發(fā)板中對應(yīng)的同樣目錄下,其中的include目錄和lib下的pkgconfig目錄可以不拷貝。

進入到/opt復(fù)制ts目錄

cp-rfts/utulinux2.6.24/s3c2440_recover/opt/

2:檢查/utulinux2.6.24/s3c2440_recover/opt/

ts/etc/ts.conf內(nèi)容加入module_rawinput:

module_rawinput(必須頂格,不然bug)

  1. modulepthrespmin=1 
  2. modulevariancedelta=30 
  3. moduledejitterdelta=100 
  4. modulelinear 

八.cd/usr/local/Trolltech/Qt-4.6.3-arm/mkspecs/default

//這個問題找了好久,結(jié)果發(fā)現(xiàn)是這里目錄錯了,應(yīng)該是

cd/usr/local/Trolltech/Qt-4.6.3-arm/mkspecs/qws/linux-arm-g++

不然后面qmake時會出錯

修改qmake配置文件:

viqmake.conf打開文件中在QMAKE_LINK_SHLIB此行下面加入一行:

QMAKE_LFLAGS+=-Wl-lts加入后如下:

  1. #modificationstog++.conf  
  2. QMAKE_CC=arm-linux-gcc  
  3. QMAKE_CXX=arm-linux-g++  
  4. QMAKE_LINK=arm-linux-g++  
  5. QMAKE_LINK_SHLIB=arm-linux-g++  
  6. QMAKE_LFLAGS+=-Wl-lts  
  7. #modificationstolinux.conf  
  8. QMAKE_AR=arm-linux-arcqs  
  9. QMAKE_OBJCOPY=arm-linux-objcopy  
  10. QMAKE_STRIP=arm-linux-strip  
  11. load(qt_config) 

九.將例子hellowrld拷貝到/utulinux2.6.24/s3c2440_recover/usr下測試

在串口終端進入文件夾中./helloworld-qws

//這里講得不清楚,是這樣的,因為要在arm板上運行,所以要用Qt-4.6.3-arm中對應(yīng)的qmake編譯

先要執(zhí)行該文件中的setenv.sh

  1. source/usr/local/Trolltech/Qt-4.6.3-arm/setenv.sh 

執(zhí)行后環(huán)境變量就在本終端中有效,不要切換終端qmake

然后找到要編譯的項目qmakename.pro

  1. make 

生成和項目名一樣的可執(zhí)行文件,該文件可以在arm板上執(zhí)行

CRT中輸入./name-qws即可

十.錯誤解決方法:

提示:.

  1. /helloworld:errorwhileloadingsharedlibraries:libts-0.0.so.0:cannotopen  
  2. sharedobjectfile:Nosuchfileordirectory 

Ts觸摸屏驅(qū)動有問題,解決方法看路徑是否對。

//這里說的路徑主要是說/utulinux2.6.24/s3c2440_recover/etc/profile中T_ROOT=/opt/ts設(shè)置是否正確

錯誤:

  1. ./helloworld:errorwhileloadingsharedlibraries:libstdc++.so.6:cannotopen  
  2. sharedobjectfile:Nosuchfileordirectory 

對應(yīng)文件拷貝鏈接:

進入目標系統(tǒng)lib目錄下://這種類似的報錯可以到ubuntu中把Qt-4.6.3-arm/lib下的文件拷貝過來,軟連接的話自己建

  1. ln-slibstdc++.so.60.0.3libstdc++.so.6 

錯誤:

  1. CannotcreateQtforEmbeddedLinuxdatadirectory:/tmp/qtembedded-0Aborted 

在目標板根目錄下創(chuàng)建文件夾:

mkdirtmp

十一.重啟nfs服務(wù)://這里不一定需要

  1. /etc/init.d/nfs-kernel-serverrestart 

重啟板子reboot

校準:(遇到錯誤提示如下)

  1. Couldnotreadcalibration:"/etc/pointercal" 

超級終端命令行輸入:ts_calibrate運行

在觸摸屏上點擊鼠標跟蹤。

重新再運行helloworld

十二、想要板子開機運行程序要掛載電腦端的utulinux目錄

首先啟動utubootloader運行:setenvbootargs

saveenv啟動后運行:

  1. mount-tnfs192.168.1.200:/utulinux2.6.24/s3c2440_recover/media/nfs 

(掛載不了重啟板子reboot)

小結(jié):詳解QT安裝全過程的內(nèi)容介紹完了,希望通過本文的QT安裝的內(nèi)容學(xué)習(xí)能對你有所幫助!

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

2010-03-10 13:24:45

Zend Debugg

2011-02-22 10:46:02

Samba配置

2011-01-21 17:51:52

2011-06-24 13:08:34

Qt Qt 4.5.3 移植

2009-06-10 16:55:42

cygwin netb安裝

2011-03-11 10:39:02

YUM安裝LAMP

2009-11-02 14:53:30

Oracle創(chuàng)建用戶權(quán)

2010-03-26 14:48:03

Ylmf OS 2.0

2010-03-30 10:11:53

CentOS源

2010-11-19 09:30:29

2011-04-02 09:20:23

freebsdmrtg安裝

2015-06-08 09:43:18

青云QingCloudIDC

2015-07-08 09:57:59

Git服務(wù)器分步詳解

2011-04-18 15:56:10

軟件測試

2009-12-08 17:56:16

WCF配置

2009-04-23 10:04:55

2024-08-27 08:00:00

2009-04-13 12:37:18

2009-03-04 10:10:49

PVS服務(wù)器桌面虛擬化Xendesktop

2009-10-21 09:14:26

Visual Stud
點贊
收藏

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