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

詳解 QT 中.pro文件的寫法

移動(dòng)開發(fā)
本文介紹的是QT 中.pro文件的寫法,有關(guān).pro文件文章有詳細(xì)的介紹,先來看內(nèi)容。

 QT.pro文件的寫法是本文要介紹的內(nèi)容,在QT中,有一個(gè)工具qmake可以生成一個(gè)makefile文件,它是由.pro文件生成而來的,.pro文件的寫法如下:

1、注釋

從“#”開始,到這一行結(jié)束。

2、指定源文件

  1. SOURCES = *.cpp 

對于多源文件,可用空格分開,如:SOURCES = 1.cpp 2.cpp3.cpp或者每一個(gè)文件可以被列在一個(gè)分開的行里面,通過反斜線另起一行,就像這樣:    

  1. SOURCES = hello.cpp   
  2.      main.cpp 

一個(gè)更冗長的方法是單獨(dú)地列出每一個(gè)文件,就像這樣:

  1. SOURCES+= hello.cpp  
  2. SOURCES +=main.cpp 

這種方法中使用“+=”比“=”更安全,因?yàn)樗皇窍蛞延械牧斜碇刑砑有碌奈募?,而不是替換整個(gè)列表。

3、指定頭文件

HEADERS = hello.h或者HEADERS += hello.h

列出源文件的任何一個(gè)方法對頭文件也都適用。

4、配置信息

CONFIG用來告訴qmake關(guān)于應(yīng)用程序的配置信息。

  1. CONFIG+= qt warn_on release 

在這里使用“+=”,是因?yàn)槲覀兲砑游覀兊呐渲眠x項(xiàng)到任何一個(gè)已經(jīng)存在中。這樣做比使用“=”那樣替換已經(jīng)指定的所有選項(xiàng)是更安全的。

1、qt部分告訴qmake這個(gè)應(yīng)用程序是使用Qt來連編的。這也就是說qmake在連接和為編譯添加所需的包含路徑的時(shí)候會考慮到Qt庫的。

2、warn_on部分告訴qmake要把編譯器設(shè)置為輸出警告信息的。

3、release部分告訴qmake應(yīng)用程序必須被連編為一個(gè)發(fā)布的應(yīng)用程序。在開發(fā)過程中,程序員也可以使用debug來替換release

5、指定目標(biāo)文件名

  1. TARGET = filename 

如果不設(shè)置該項(xiàng)目,目標(biāo)名會被自動(dòng)設(shè)置為跟項(xiàng)目文件一樣的名稱

6、添加界面文件(ui)

  1. INTERFACES = filename.ui 

7、平臺相關(guān)性處理

我們在這里需要做的是根據(jù)qmake所運(yùn)行的平臺來使用相應(yīng)的作用域來進(jìn)行處理。為Windows平臺添加的依賴平臺的文件的簡單的作用域看起來就像這樣:

  1. win32 {  
  2. SOURCES += hello_win.cpp  

所以如果qmake運(yùn)行在Windows上的時(shí)候,它就會把hello_win.cpp添加到源文件列表中。如果qmake運(yùn)行在其它平臺上的時(shí)候,它會很簡單地把這部分忽略。

8、如果一個(gè)文件不存在,停止qmake

如果某一個(gè)文件不存在的時(shí)候,你也許不想生成一個(gè)Makefile。我們可以通過使用exists()函數(shù)來檢查一個(gè)文件是否存在。我們可以通過使用error()函數(shù)把正在運(yùn)行的qmake停下來。這和作用域的工作方式一樣。只要很簡單地用這個(gè)函數(shù)來替換作用域條件。對main.cpp文件的檢查就像這樣:

  1. !exists( main.cpp ) {  
  2.   error( "No main.cpp file found")  

“!”用來否定這個(gè)測試,比如,如果文件存在,exists( main.cpp)是真,如果文件不存在,!exists( main.cpp )是真。

9、檢查多于一個(gè)的條件

假設(shè)你使用Windows并且當(dāng)你在命令行運(yùn)行你的應(yīng)用程序的時(shí)候你想能夠看到qDebug()語句。除非你在連編你的程序的時(shí)候使用console設(shè)置,你不會看到輸出。我們可以很容易地把console添加到CONFIG行中,這樣在Windows下,Makefile就會有這個(gè)設(shè)置。但是如果告訴你我們只是想在當(dāng)我們的應(yīng)用程序運(yùn)行在Windows下并且當(dāng)debug已經(jīng)在CONFIG行中的時(shí)候,添加console。這需要兩個(gè)嵌套的作用域;只要生成一個(gè)作用域,然后在它里面再生成另一個(gè)。把設(shè)置放在最里面的作用域里,就像這樣:

  1. win32 {  
  2.   debug {  
  3.      CONFIG += console  
  4.   }  

嵌套的作用域可以使用冒號連接起來,像這樣:

  1. win32:debug {  
  2. CONFIG += console  

10、摸板

模板變量告訴qmake為這個(gè)應(yīng)用程序生成哪種makefile。下面是可供使用的選擇:

1、app -建立一個(gè)應(yīng)用程序的makefile。這是默認(rèn)值,所以如果模板沒有被指定,這個(gè)將被使用。
2、lib - 建立一個(gè)庫的makefile。
3、 vcapp - 建立一個(gè)應(yīng)用程序的VisualStudio項(xiàng)目文件。
4、vclib - 建立一個(gè)庫的VisualStudio項(xiàng)目文件。
4、 subdirs -這是一個(gè)特殊的模板,它可以創(chuàng)建一個(gè)能夠進(jìn)入特定目錄并且為一個(gè)項(xiàng)目文件生成makefile并且為它調(diào)用make的makefile。

11、生成Makefile

當(dāng)你已經(jīng)創(chuàng)建好你的項(xiàng)目文件,生成Makefile就很容易了,你所要做的就是先到你所生成的項(xiàng)目文件那里然后輸入:

Makefile可以像這樣由“.pro”文件生成:

  1. qmake -oMakefile hello.pro 

對于VisualStudio的用戶,qmake也可以生成“.dsp”文件,例如:

  1. qmake -tvcapp -o hello.dsp hello.pro 

附加:

.pro 文件預(yù)定義宏設(shè)置

  1. CONFIG(release, debug|release) {  
  2. DEFINES += MYRELEASE  
  3. }  
  4. else {  
  5. DEFINES += MYDEBUG  

小結(jié):有關(guān)詳解 QT .pro文件的寫法的內(nèi)容介紹完了,希望本文對你有幫助,更多內(nèi)容請參考編輯推薦。

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

2011-06-28 14:27:38

Qt Qt For Sym

2011-06-16 14:28:08

Qt Symbian 文件

2011-06-14 11:48:38

Webkit QT

2011-06-24 09:13:30

QT SDL

2010-12-16 10:00:20

QtVisual Stud

2011-06-29 17:20:20

Qt 內(nèi)存 QOBJECT

2011-06-28 15:18:45

Qt 單例模式

2011-06-24 14:17:58

Qt 容器類 QVector

2011-06-24 15:16:33

Qt 插件

2011-06-28 10:38:52

QT 文件

2011-09-01 15:51:53

Qt插件VS 2010

2011-06-30 10:22:48

QT Graphics View

2011-08-29 14:59:26

QtEvent事件

2011-07-04 17:45:45

Qt Sqlite 數(shù)據(jù)庫

2011-06-30 10:09:26

QT Graphics View

2011-08-30 14:25:06

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

2011-06-30 10:36:07

QT Graphics View

2011-06-20 09:26:38

Linux qtopia QT

2011-06-24 10:05:51

QT 對象 父對象

2011-07-05 09:44:31

QT Mysql 亂碼
點(diǎn)贊
收藏

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