欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

KS02-04pro文件常用配置-創(chuàng)新互聯(lián)

版權(quán)聲明

----------------------------------------------------------------

創(chuàng)新互聯(lián)長(zhǎng)期為近1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為門(mén)頭溝企業(yè)提供專(zhuān)業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),門(mén)頭溝網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

作者: 女兒叫老白

轉(zhuǎn)載請(qǐng)注明出處!

網(wǎng)頁(yè)版課程源碼 提取碼:1uy7

引言

----------------------------------------------------------------

在前面章節(jié)我們通過(guò)一個(gè)exe的例子介紹了pro文件的基本配置,本節(jié)來(lái)看一下pro文件的一些常用配置。

正文

----------------------------------------------------------------

1.?? exe還是dll---TEMPLATE

我們開(kāi)發(fā)的程序要么是exe程序、要么是dll程序,這由啥來(lái)決定呢?首先來(lái)介紹一下TEMPLATE配置項(xiàng)。該配置項(xiàng)用來(lái)確定我們生成的程序是exe還是dll。

TEMPLATE???? = app # 表示本項(xiàng)目生成一個(gè)exe

TEMPLATE???? = lib? # 表示本項(xiàng)目生成一個(gè)dll。

TEMPLATE???? = subdirs? # 表示本項(xiàng)目將掃描指定的子目錄集合并執(zhí)行相關(guān)操作。

????? # 經(jīng)常與SUBDIRS參數(shù)配合使用。

????? # 比如指定需要翻譯的子目錄列表時(shí),可以用該配置。

2.?? 用什么開(kāi)發(fā)語(yǔ)言呢---LANGUAGE

語(yǔ)法:LANGUAGE =C++

表示本項(xiàng)目用C++語(yǔ)言開(kāi)發(fā)。

注意: C要大寫(xiě)。

3.?? 生成的模塊名稱(chēng)---TARGET

語(yǔ)法:TARGET = xxx

表示本項(xiàng)目生成的程序的名字為xxx。

比如,根據(jù)TEMPLATE參數(shù),如果WINDOWS上生成的是prog.exe或者prog.dll,或者在LINUX上生成的是prog(exe文件名)或者libprog.so.1.0.0(dll文件名),都可以用:

TARGET= prog

4.?? debug還是release---CONFIG

語(yǔ)法:CONFIG? +=? xxx? xxx? xxx

表示增加某些CONFIG配置項(xiàng),中間用空格區(qū)分。

語(yǔ)法:CONFIG? -=? xxx? xxx? xxx

表示刪除某些CONFIG配置項(xiàng)。

常見(jiàn)參數(shù)介紹:

release

以release版本構(gòu)建。如果也指定debug,最后一個(gè)生效。可以用+/-進(jìn)行控制,如CONFIG -= release, CONFIG+=release

debug

項(xiàng)目以debug模式構(gòu)建。可以用+/-進(jìn)行控制。

debug_and_release

項(xiàng)目以debug和release兩種模式構(gòu)建。即編譯時(shí)同時(shí)生成debug何release版本的目標(biāo)程序。

precompile_header

可以在項(xiàng)目中使用預(yù)編譯頭文件。

rtti

啟用RTTI支持。默認(rèn)使用編譯器默認(rèn)值(具體跟編譯器有關(guān))。關(guān)閉用rtti_off。

stl

啟用STL支持。默認(rèn)使用編譯器默認(rèn)值(具體跟編譯器有關(guān))。關(guān)閉用stl_off。

thread

啟用線程支持。當(dāng)CONFIG包括qt時(shí)啟用。thread是缺省設(shè)置。

warn_on

編譯器應(yīng)該輸出盡可能多的警告。如果也指定了warn_off,最后一個(gè)生效。

warn_off

編譯器應(yīng)該輸出盡可能少的警告。

qt

表示需要鏈接qt的庫(kù)。一般使用Qt類(lèi)庫(kù)時(shí)需要該配置項(xiàng),開(kāi)發(fā)服務(wù)模塊時(shí),如果只是用Qt的pro文件來(lái)組織項(xiàng)目并編譯,一般會(huì)使用其他類(lèi)庫(kù)或者自行編寫(xiě)類(lèi)庫(kù),所以編寫(xiě)服務(wù)模塊時(shí)一般不用qt(寫(xiě)成:CONFIG -= qt)。

c++11

啟用c++11支持。如果編譯器不支持c++11這個(gè)選項(xiàng),沒(méi)有影響。默認(rèn)不支持c++11。

c++14

啟用c++14支持。如果編譯器不支持c++14這個(gè)選項(xiàng),沒(méi)有影響。默認(rèn)不支持c++14。

5.?? 使用qt的哪些模塊---QT

語(yǔ)法:QT +=? xxx? xxx xxx

表示增加某些QT配置項(xiàng),各個(gè)配置項(xiàng)之間用空格隔開(kāi)。

語(yǔ)法:QT -=? xxx? xxx xxx

表示刪除某些QT配置項(xiàng)。

指定項(xiàng)目中使用Qt的模塊。默認(rèn)情況下,QT包含core和gui這兩個(gè)模塊,以確保標(biāo)準(zhǔn)的GUI應(yīng)用程序無(wú)需進(jìn)一步的配置就可以構(gòu)建。

如果想建立一個(gè)不包含Qt GUI模塊的項(xiàng)目,可以使用“ -=”操作符。

下面一行將構(gòu)建一個(gè)不帶gui的Qt項(xiàng)目:

1.?? ?

QT? -=? ? gui? # 僅僅使用core模塊

如果要?jiǎng)?chuàng)建一個(gè)界面(widget),而且要用到XML及網(wǎng)絡(luò)相關(guān)的類(lèi),那么需要包含如下模塊:

1.?? ?

QT += ? widgets xml network

請(qǐng)注意,如果您需要用到ui文件,請(qǐng)務(wù)必配置QT+= widgets,否則編譯時(shí)將無(wú)法通過(guò)uic處理ui文件(無(wú)法生成ui文件對(duì)應(yīng)的.h頭文件),將導(dǎo)致編譯失敗。

6.?? 各種DIR | 各種PATH

DEPENDPATH

指定查看解決依賴(lài)關(guān)系的目錄列表,當(dāng)包含文件時(shí)使用:

1.?? ?

DEPENDPATH ? += .? forms include? qrc? ? sources

其中"."表示當(dāng)前目錄。

INCLUDEPATH

指定編譯項(xiàng)目時(shí)應(yīng)該被搜索的include目錄,比如:

1.?? ?

INCLUDEPATH ? = $$(TRAINDEVHOME)/include

這里使用了環(huán)境變量TRAINDEVHOME,引用環(huán)境變量時(shí)要寫(xiě)成$$(TRAINDEVHOME)的樣子。關(guān)于環(huán)境變量的使用將在下節(jié)詳細(xì)介紹。

這里需要注意的是,如果項(xiàng)目中包含資源 (.ui) 文件,那么應(yīng)該將$$UI_DIR添加到INCLUDEPATH中,這需要提前定義UI_DIR的值:

1.?? ? ?

2.?? ? ?

3.?? ? ?

UI_DIR = $(TRAINDEVHOME)/obj/demo/dialog/ui

INCLUDEPATH ? += $$(TRAINDEVHOME)/include \

$$UI_DIR

DESTDIR:

指定目標(biāo)文件的存放位置,也就是項(xiàng)目生成的exe或dll的存放目錄。 比如下述語(yǔ)句指明了一個(gè)dll項(xiàng)目的目標(biāo)程序的存放位置:

1.?? ?

DESTDIR ? = ../../lib

?

MOC_DIR:

指定來(lái)自moc的所有中間文件放置的目錄(含Q_OBJECT宏的頭文件轉(zhuǎn)換成標(biāo)準(zhǔn).h頭文件的存放目錄)。比如:

1.?? ?

MOC_DIR ? = $$(TRAINDEVHOME)/obj/moc

???

OBJECTS_DIR:

指定所有中間文件.o(.obj)的存放目錄,比如:

1.?? ?

OBJECTS_DIR ? = $$(TRAINDEVHOME)/obj/chapter02/ks02_04

?

RCC_DIR:

指定Qt資源編譯器輸出文件的目錄(.qrc文件轉(zhuǎn)換成qrc_*.h頭文件的存放目錄),比如:

1.?? ?

RCC_DIR ? =$$(TRAINDEVHOME)/obj/chapter02/ks02_04/resources

?

UI_DIR:

指定qt的uic命令轉(zhuǎn)換ui文件得到的所有中間文件放置的目錄(.ui文件轉(zhuǎn)化成ui_*.h頭文件的存放目錄),比如:

1.?? ?

UI_DIR ? =$$(TRAINDEVHOME)/obj/chapter02/ks02_04/ui

7.?? FORMS

指定項(xiàng)目使用的ui文件。這些ui文件在編譯前將被qt的uic命令處理。所有的構(gòu)建這些ui文件所需的依賴(lài)、頭文件和源文件都會(huì)自動(dòng)被添加到項(xiàng)目中。

1.?? ? ?

2.?? ? ?

FORMS ? = mydlg.ui \

login.ui

8.?? HEADERS

指定項(xiàng)目用到的頭文件,比如:

1.?? ? ?

2.?? ? ?

3.?? ? ?

4.?? ? ?

HEADERS ? = abc.pro \

myfile.h \

../../comdll/mycom.h \

$$(TRAINDEVHOME)/include/base.h

注:

1.?? ? 將pro文件添加到HEADERS是為了方便,這樣就可以在VisualStudio工具中直接找到pro文件,而無(wú)需到資源管理器查找。

2.?? ? 可以用相對(duì)路徑的語(yǔ)法,比如:../../comdll/mycom.h

3.?? ? 可以使用環(huán)境變量,比如: $$(TRAINDEVHOME)/include/base.h

4.?? ? 使用”\”進(jìn)行換行。"\"前加一個(gè)空格。

9.?? SOURCES

項(xiàng)目用到的cpp文件,語(yǔ)法、注意點(diǎn)同HEADERS。

10.? RESOURCES

項(xiàng)目用到的資源文件 (qrc) 的名稱(chēng),比如:

1.?? ?

RESOURCES ? += mdi.qrc

11.? LIBS

指定鏈接到項(xiàng)目中的庫(kù)列表。使用-l(小寫(xiě)的L)和-L兩種語(yǔ)法。

-l(小寫(xiě)的L)

表示庫(kù)文件名,比如,下面的語(yǔ)句表示鏈接到庫(kù)文件mycomm。

1.?? ?

LIBS? += -lmycomm

-L

表示庫(kù)文件所在的路徑,比如,下面的語(yǔ)句表示庫(kù)文件所在目錄為:

/usr/local/myprogram/lib,鏈接的庫(kù)文件為mycomm、fesp。

1.?? ? ?

2.?? ? ?

3.?? ? ?

LIBS? += -L/usr/local/myprogram/lib \

?????? -lmcomm \

?????? -lfesp

12.? TRANSLATIONS

指定包含用戶界面翻譯文本的翻譯(.ts)文件列表,比如:

#xxxfortranslations.pro

1.?? ?

TRANSLATIONS =translations/graphplatform_zh_CN.ts

該配置將被lupdate命令讀取(如下,手工執(zhí)行該命令),生成的ts文件就保存在TRANSLATIONS所指向的文件名。

lupdate ? xxxfortranslations.pro?

13.? SUBDIRS

同template=subdirs配合使用。

該配置指出本項(xiàng)目包含的子目錄,可以用來(lái)掃描生成翻譯文件,或者級(jí)聯(lián)生成整個(gè)項(xiàng)目的Makefile。

1.?? ? ?

2.?? ? ?

3.?? ? ?

4.?? ? ?

5.?? ? ?

6.?? ? ?

7.?? ? ?

template=subdirs

SUBDIRS??? = \

esfc?? \

common \

phcore \

phwidget

如果pro包含上述內(nèi)容,那么對(duì)該pro執(zhí)行qmake時(shí),qt會(huì)自動(dòng)進(jìn)入SUBDIRS所包含的各個(gè)子目錄,分別執(zhí)行qmake。

?

注:

1.?? 修改pro或pri文件后,務(wù)必重新執(zhí)行qmake或qmake –tp vc,以便更新Makefile或者VisualStudio的項(xiàng)目文件(.vcxproj)

結(jié)語(yǔ)

----------------------------------------------------------------

本節(jié),我們給大家介紹了pro文件常用的一些配置,內(nèi)容稍微有點(diǎn)多。讀者需要通過(guò)多加練習(xí)慢慢掌握。練習(xí)時(shí),讀者可以嘗試修改配置項(xiàng)的值通過(guò)觀察效果來(lái)加深理解。

----------------------------------------------------------------

《Qt入門(mén)與提高-GUI產(chǎn)品開(kāi)發(fā)》目錄
上一節(jié):K02-03加點(diǎn)料-增加一張圖片
下一節(jié):KS02-05 pri 文件有啥用?

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享文章:KS02-04pro文件常用配置-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)URL:http://www.chinadenli.net/article4/dcsooe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google外貿(mào)網(wǎng)站建設(shè)網(wǎng)站營(yíng)銷(xiāo)自適應(yīng)網(wǎng)站搜索引擎優(yōu)化微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)