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

詳解Linux系統(tǒng)中QT(QTopia)平臺開發(fā)

移動開發(fā)
本文講解的內(nèi)容是Linux系統(tǒng)中QT QTopia 平臺開發(fā)說明,QTopia采用嵌入式Linux操作系統(tǒng)的消費(fèi)電子設(shè)備而開發(fā)的綜合應(yīng)用平臺,內(nèi)容如下。

QTopia采用嵌入式Linux操作系統(tǒng)的消費(fèi)電子設(shè)備而開發(fā)的綜合應(yīng)用平臺, Qtopia包含完整的應(yīng)用層、靈活的用戶界面、窗口操作系統(tǒng)、應(yīng)用程序啟動程序以及開發(fā)框架。

一、開發(fā)包的獲取

本例的qtopia開發(fā)包名稱為:qtopia-arm.tar.gz;

二、開發(fā)環(huán)境的搭建

qtopia開發(fā)包運(yùn)行于Linux操作系統(tǒng)上,Linux要求內(nèi)核版本為2.4.18或以上。安裝Linux操作系統(tǒng),

如果只是在PC機(jī)上進(jìn)行模擬器上的開發(fā)和交叉編譯,可將Linux安裝到虛擬機(jī)上。將Linux安裝到虛擬機(jī)上,建議硬盤空間最少分配6G,因為開發(fā)環(huán)境的搭建需要很大空間。

 

1、qtopia開發(fā)包的安裝步驟>

(1)、將qtopia-arm.tar.gz放到/opt/目錄下

建議放在/opt/目錄下,如果需要將開發(fā)包放到其他的目錄,則解壓后需要修改

qtopia-phone-2.1.1/src/下的config.pri文件。

(2)、用命令tar解壓

在Linux終端中CD到/opt/目錄下,輸入命令 tar -zxf qtopia_dev.tar.gz (回車),幾分鐘后解壓結(jié)束,出現(xiàn)命令提示符,如果報找不到什么目錄或找不到什么文件,輸入命令“df -m”查看硬盤使用情況,一般原因是硬盤空間不足,解壓失敗,刪除硬盤上不需要的文件或重新安裝Linux操作系統(tǒng),把分配硬盤空間更大。

(3)、解壓后生成的目錄為qtopia_dev

2、交叉編譯工具的安裝步驟:

(1)、將cross2compiler.tar.gz放到/opt/目錄下

(2)、用命令tar -zxf cross2compiler.tar.gz 解壓

(3)、解壓后生成的目錄為debugdir

交叉編譯工具的安裝是為了編譯出在真機(jī)上運(yùn)行的可執(zhí)行文件,如果只是在模擬器上開發(fā),可不進(jìn)行交叉工具的安裝。

三、模擬器上開發(fā)

1、配置文件和全局變量的設(shè)置:

(1)、將.../qtopia_dev/.../x86/Settings目錄放到/root/目錄下,如果已經(jīng)有/root/Settings目錄,則進(jìn)行覆蓋。

(2)、進(jìn)入qtopia_dev/.../.../x86/目錄。(中間目錄省略)

(3)、運(yùn)行 ./setenv 設(shè)置環(huán)境變量,或source setenv命令。

2、編譯例子工程:

在目錄.../qtopia_dev/x86/qtopia-phone-2.1.1/examples/application/下有一個名為

application的示例工程,對該工程進(jìn)行編譯和安裝,可在模擬器中看到運(yùn)行效果。

編譯步驟:

(1)、進(jìn)入qtopia_dev/.../.../x86/qtopia-phone-2.1.1/examples/application目錄;

(2)、運(yùn)行qmake生成Makefile 文件;

(3)、運(yùn)行make install 進(jìn)行編譯和安裝。

3、模擬器上查看運(yùn)行效果:

(1)、進(jìn)入.../qtopia_dev/20060106V1102/x86/目錄

(2)、運(yùn)行./rn.dat 啟動模擬器

4、各個文件安裝路徑:

(1)、所有編譯后的程序放在

qtopia_dev/.../.../x86/qtopia-phone-2.1.1/image/opt/Qtopia/bin/目錄下;

(2)、程序相應(yīng)的desktop文件放在

qtopia_dev/.../.../x86/qtopia-phone-2.1.1/image/opt/Qtopia/apps/Application/目錄下

(3)、所有的程序圖標(biāo)放在qtopia_dev/.../.../x86/pia-phone-2.1.1/image/opt/Qtopia/pics/程序名/目錄下

5、示例工程中的各個文件

(1)、application.pro文件

該文件中指定工程中用到的各個文件,文件包括:源代碼文件(.c .cpp .h)、資源文件名、目標(biāo)文件名、

desktop文件及路徑、圖標(biāo)文件及路徑、幫助文件及路徑。

qmake命令在執(zhí)行過程中訪問application.pro文件將生成Makefile文件。

(2)、example.desktop文件

該文件將安裝到模擬器和真機(jī)上,為了在運(yùn)行時找到工程的各個文件。

(3)、example.control文件

文件中指定了工程的可執(zhí)行文件路徑、desktop文件路徑、幫助文件路徑和圖標(biāo)文件路徑。

這個文件我現(xiàn)在還沒有搞清楚:)

(4)、examplebase.ui文件

該文件中以XML的格式定義了可視窗口上的各個部件。

(5)、其它文件

example.html和Example.png分別是工程的幫助文件和圖標(biāo)文件。

 

6、建立自己的工程

(1)、在示例工程的基礎(chǔ)上建立自己的工程:新建一個自己工程的目錄,將示例工程中的相關(guān)文件復(fù)制到該目錄,在示例工程的基礎(chǔ)上進(jìn)行修改。需要復(fù)制的文件有:main.cpp、application.pro、example.control、example.cpp、example.h、example.desktop、examplebase.ui、Example.png、example.html。

(2)、修改事項:

application.pro文件:

“application.pro”文件以.pro為擴(kuò)展名,文件名要和它所在的目錄名相同;

11行,寫上所有工程中用到頭文件,文件名之間用空格隔開;

12行,寫上所有工程中用到.c或.cpp文件,文件名之間用空格隔開;

13行,可視窗口文件名;

14行,生成可執(zhí)行文件名(目標(biāo)文件名);

18行,.desktop文件名;

22行,圖標(biāo)文件名;

23行,圖標(biāo)路徑名,以目標(biāo)文件名為目錄名;

26行,說明文件名;

desktop文件

A、7行,可執(zhí)行文件名;

B、8行,圖標(biāo)文件名;

.ui文件,該文件可用QT開發(fā)環(huán)境修改,也可用文本編輯器修改,

A、第2行,<class>ExampleBase</class>,“ExampleBase”可修改,但一定要與example.h文件的25行父類名稱一致;

main.cpp文件

A、該文件名不修改;

 B、21行,修改包含的頭文件名;

 C、24行,修改類名;

(3)、編譯自己的工程

A、生成Makefile文件,在工程的目錄下,運(yùn)行qmake命令;

B、編譯,在工程的目錄下,運(yùn)行make命令;

C、安裝,在工程的目錄下,運(yùn)行make install命令;

四、為真機(jī)上運(yùn)行進(jìn)行編譯

將代碼用arm編譯器進(jìn)行編譯,目標(biāo)文件就可在真機(jī)上運(yùn)行。

1、必須進(jìn)行交叉編譯工具的安裝;

2、將工程目錄復(fù)制到.../qtopia_dev/20060106V1102/arm/qtopia-phone-2.1.1/目錄下;
 

3、編譯;

五、將文件安裝到真機(jī)上

1、設(shè)備間的軟件連接:

連接步驟:

  (1)、連接好個連線

(2)、啟動PC到Linux系統(tǒng)中

(3)、關(guān)閉防火墻(service iptables stop)

(4)、掛載進(jìn)QT的開發(fā)包(mount /dev/hda4 /mnt/win)

(5)、手動加載usbdnet.o(進(jìn)入/mnt/win目錄下,執(zhí)行install),并在終端確認(rèn)模塊已經(jīng)加載

(6)、啟動(重起)nfs(service nfs restart)

(7)、啟動minicom(#minicom)

(8)、到/home/目錄下,執(zhí)行腳本pc_Linux

(9)、在終端啟動USB設(shè)備(ifconfig usb0 192.168.254.1 up)

(10)、在minicom窗口中執(zhí)行/home/目錄下的Linuxrc_run腳本

(11)、在minicom窗口中執(zhí)行/home/目錄下的腳本pc_Linux

(12)、檢查目錄/mnt/,是否和目錄/opt/p2fs下的內(nèi)容一致,若一致,則成功

這里提供幾個診斷連接成功的方法:

pc啟動候,通過lsmod|grep usbdnet看看模塊是否存在,如果不存在,請手動通過./install加載

如果以上都正確,連接手機(jī),如果ifconfig -a 能看到設(shè)備而ifconfig 看不到,請按照文檔設(shè)置ip并激活。

2、文件安裝目錄:

將編譯好的程序、desktop文件和圖標(biāo)放在手機(jī)上/opt/Qtopia/各自對應(yīng)的目錄下。

(1)、所有編譯后的程序放在

qtopia_dev/.../arm/qtopia-phone-2.1.1/image/opt/Qtopia/bin/目錄下

(2)、程序相應(yīng)的desktop文件放在

qtopia_dev/.../arm/qtopia-phone-2.1.1/image/opt/Qtopia/apps/Application/目錄下

(3)、所有的程序圖標(biāo)放在
qtopia_dev/.../arm/qtopia-phone-2.1.1/image/opt/Qtopia/pics/程序名/ 目錄下

3、重起手機(jī)。

六、手機(jī)目錄:

  1. / (根目錄)  
  2.  
  3. |----bin  
  4. |----lib  
  5. |----home  
  6. |----mnt (對應(yīng)于PC機(jī)的/opt/p2fs目錄,該目錄結(jié)構(gòu)可隨意)  
  7. |  
  8. |----opt  
  9. | |----Qtopia  
  10. | |----bin (放編譯后的程序)  
  11. | |----etc    
  12. | |----pics (放圖標(biāo)文件)  
  13. | |----apps    
  14. | |--Applications (放desktop文件)  
  15. |    
  16. |----Applications (該目錄結(jié)構(gòu)任意,可存放工程自己的文件) 

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

2011-06-20 09:06:05

Qt Qtopia

2011-06-13 15:57:26

linux QT QTOPIA

2011-06-29 09:20:41

Qt Embedded Qtopia

2011-06-14 11:48:38

Webkit QT

2011-08-30 13:59:06

QTMysql數(shù)據(jù)庫

2011-06-28 13:38:15

Arm linux QT

2011-07-05 16:31:17

Qtopia 交叉編譯

2012-07-06 15:10:39

跨平臺工具QtNokia

2011-06-29 10:18:20

LINUX QT ARM

2011-06-16 17:45:46

Qt Wince

2011-08-29 09:33:24

WindowsQt庫靜態(tài)

2011-06-15 18:38:17

Linux Qt Symbian

2011-06-28 14:02:34

QT ARM

2011-06-24 09:13:30

QT SDL

2011-06-09 18:24:36

QT Wince

2011-06-30 09:46:01

QT 顯示視頻 linux

2011-06-23 18:16:59

Qt Qtopia

2009-11-30 16:12:38

Linux開發(fā)領(lǐng)域

2011-06-29 17:20:20

Qt 內(nèi)存 QOBJECT

2011-06-28 15:18:45

Qt 單例模式
點(diǎn)贊
收藏

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