pro檔案
.pro
檔有點類似make
指令所需要的makefile
,不過.pro
是基於qmake
。
變數:
變數 | 內容 |
---|---|
HEADERS | 設定.h 檔的清單 |
SOURCES | 設定.cpp 檔的清單 |
QT | Qt的模組設定 |
CONFIG | 對於整個專案的通用設定 |
DESTDIR | 可執行檔或二進位檔將會被放在此變數所指定的位置 |
FORMS | 設定.ui 檔案清單 |
TEMPLATE | 專案所使用到的模板,可以利用這個選項決定輸出的專案為,應用程式 、函式庫 或插件 。 |
HEADERS
在HEADERS
變數中要將專案中所有的header file
檔案,列在這裡。
HEADERS += Object1.h Object2.h
若要換則需要使用反斜線將檔案隔開。
HEADERS += Object1.h \
Object2.h
SOURCES
SOURCES
變數使用方式與HEADERS
相同,只不過這裡是要將所有的source file
清單列在這裡。
SOURCES += Object1.cpp \
Object2.cpp
QT
QT
選項用於加入專案所使用到的模組:
QT += core network
QT -= gui
增加模組使用+=
,不使用某模組使用-=
將其刪除。
模組列表:
模組名稱 | 模組詳情 |
---|---|
core (預設引入的模組) | QtCore模組。Qt的含有核心內容及通用功能的模組。 |
gui (預設引入的模組) | QtGUI模組。含有GUI組件的模組。 |
network | QtNetwork模組。含有網路功能的模組。 |
opengl | QtOpenGL模組。含有openGL功能的模組。 |
sql | QtSql模組。含有有關SQL功能的模組。 |
svg | QtSvg模組。含有可用svg向量圖檔功能的模組。 |
xml | QtXml模組。含有可讀寫XML檔案,或執行SAX或DOM的功能。 | |
xmlpatterns | QtXmlPatterns模組。支援XPath,XQuery,XSLT及XML Schema Validation等功能 |
qt3support | Qt3Support模組。用於將專案從Qt3轉至Qt4。 |
CONFIG
用來設定編譯器該用的選項,或該被連結的函式庫。
選項 | 選項詳情 |
---|---|
release | 專案會以release的版本輸出,但若CONFIG 變數中已經指定了debug ,release 將被忽略。 |
debug | 專案以debug的版本輸出。 |
debug_and_release | 專案會同時輸出debug 及release 兩個版本。 |
debug_and_release_target | 專案會同時輸出debug 及release 兩個版本。TARGET會同時輸出debug 及release 兩個版本。 |
warn_on | 會盡量將所有編譯器所丟出的錯誤顯示出來。若使用warn_on 的選項,warn_off 將被忽略。 |
warn_off | 會盡量不顯示編譯器所丟出的錯誤 。 |
未來更新將會講解debug_and_release_target與debug_and_release的差別。
TEMPLATE
利用TEAMPLATE
變數可以決定我們要將程式建構成何種型態的專案。
模板名稱 | 模板詳情 |
---|---|
app (預設的參數) | 產生一個MakeFile來建構應用程式。 |
lib | 產生一個MakeFile來建構函式庫。 |
subdirs | 在主專案下的子目錄另建一個MakeFile,並使用SUBDIRS 變數,用來特別建置某幾個子專案,每個子目錄專案都應該要有自己的.pro 檔案。 |
vcapp | 建立一個Visual Studio 的Project File來建構應用程式。 |
vclib | 建立一個Visual Studio 的Project File來建構函式庫。 |
vcsubdirs | 建立一個Visual Studio 的Project File來建構subdirs子專案。 |
SUBDIRS變數