多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > Qt之pro配置詳解

Qt之pro配置詳解

來源:程序員人生   發布時間:2016-07-23 10:37:29 閱讀次數:3254次

簡述

使用Qt的時候,我們常常會對pro進行1系列繁瑣的配置,為方便大家理解、查找,現將經常使用的配置進行整理。

  • 簡述
  • 配置
    • 注釋
    • CONFIG
    • DEFINES
    • DEPENDPATH
    • DESTDIR
    • FORMS
    • HEADERS
    • INCLUDEPATH
    • LIBS
    • MOC_DIR
    • OBJECTS_DIR
    • QT
    • RCC_DIR
    • RESOURCES
    • RC_FILE
    • RC_ICONS
    • SOURCES
    • TARGET
    • TEMPLATE
    • TRANSLATIONS
    • UI_DIR
  • 更多參考

配置

注釋

以“#”開始,到這1行結束。
快捷鍵:Ctrl + /

CONFIG

指定編譯器選項和項目配置,值由qmake內部辨認并具有特殊意義。

以下配置值控制編譯標志:

選項 說明
release 項目以release模式構建。如果也指定了debug,那末最后1個生效。
debug 項目以debug模式構建。
debug_and_release 項目準備以debug和release兩種模式構建。
debug_and_release_target 此選項默許設置。如果也指定了debug_and_release,終究的debug和release構建在不同的目錄。
build_all 如果指定了debug_and_release,默許情況下,該項目會構建為debug和release模式。
autogen_precompile_source 自動生成1個.cpp文件,包括在.pro中指定的預編譯頭文件。
ordered 使用subdirs模板時,此選項指定應當依照目錄列表的順序處理它們。
precompile_header 可以在項目中使用預編譯頭文件的支持。
warn_on 編譯器應當輸出盡量多的正告。如果也指定了warn_off,最后1個生效。
warn_off 編譯器應當輸出盡量少的正告。
exceptions 啟用異常支持。默許設置。
exceptions_off 禁用異常支持。
rtti 啟用RTTI支持。默許情況下,使用編譯器默許。
rtti_off 禁用RTTI支持。默許情況下,使用編譯器默許。
stl 啟用STL支持。默許情況下,使用編譯器默許。
stl_off 禁用STL支持。默許情況下,使用編譯器默許。
thread 啟用線程支持。當CONFIG包括qt時啟用,這是缺省設置。
c++11 啟用c++11支持。如果編譯器不支持c++11這個選項,沒有影響。默許情況下,支持是禁用的。
c++14 啟用c++14支持。如果編譯器不支持c++14這個選項,沒有影響。默許情況下,支持是禁用的。

當使用debug和release選項時(Windows下默許的),該項目將被處理3次:1次生成1個”meta”Makefile,另外兩次生成Makefile.Debug和Makefile.Release。

在后面的次數,build_pass和相應的debug或release添加到CONFIG選項。這使得它可以履行構建特定任務。

例如:

build_pass:CONFIG(debug, debug|release) { unix: TARGET = $$join(TARGET,,,_debug) else: TARGET = $$join(TARGET,,,d) }

DEFINES

qmake添加這個變量的值作為編譯器C預處理器宏(-D選項)。

例如:

DEFINES += USE_MY_STUFF

然后就能夠在代碼中使用:

#ifdef USE_MY_STUFF // TODO #else // TODO #endif

DEPENDPATH

指定查看解決依賴關系的目錄列表,當包括文件時使用。

例如:

DEPENDPATH += . forms include qrc sources

DESTDIR

指定在何處放置目標文件。

例如:

DESTDIR = ../../lib

常常可以指定項目的特殊版本(比如:正式版、試用版)、對1些特殊功能(比如:加密狗)進行限制等。

FORMS

指定UI文件(參考: Qt Designer Manual)在編譯前被uic處理。所有的構建這些UI文件所需的依賴、頭文件和源文件都會自動被添加到項目中。

例如:

FORMS = mydialog.ui \ mywidget.ui \ myconfig.ui

HEADERS

指定項目中所有的頭文件。

qmake會自動檢測是頭文件的類中是不是需要moc,并增加適當的依賴關系和文件到項目中,來生成和鏈接moc文件。

例如:

HEADERS = myclass.h \ login.h \ mainwindow.h

INCLUDEPATH

指定編譯項目時應當被搜索的#include目錄。

例如:

INCLUDEPATH = c:/msdev/include d:/stl/include

如果路徑包括空格,需要使用引號包括。

win32:INCLUDEPATH += "C:/mylibs/extra headers" unix:INCLUDEPATH += "/home/user/extra headers"

LIBS

指定鏈接到項目中的庫列表。如果使用Unix -l (library) 和 -L (library path) 標志,在Windows上qmake正確處理庫(也就是說,將庫的完全路徑傳遞給鏈接器),庫必須存在,qmake會尋覓-l指定的庫所在的目錄。

例如:

win32:LIBS += c:/mylibs/math.lib unix:LIBS += -L/usr/local/lib -lmath

如果路徑包括空格,需要使用引號包括路徑。

win32:LIBS += "C:/mylibs/extra libs/extra.lib" unix:LIBS += "-L/home/user/extra libs" -lextra

MOC_DIR

指定來自moc的所有中間文件放置的目錄(含Q_OBJECT宏的頭文件轉換成標準.h文件的寄存目錄)。

例如:

unix:MOC_DIR = ../myproject/tmp win32:MOC_DIR = c:/myproject/tmp

OBJECTS_DIR

指定所有中間文件.o(.obj)放置的目錄。

例如:

unix:OBJECTS_DIR = ../myproject/tmp win32:OBJECTS_DIR = c:/myproject/tmp

QT

指定項目中使用Qt的模塊。默許情況下,QT包括core和gui,以確保標準的GUI利用程序無需進1步的配置就能夠構建。

如果想建立1個不包括Qt GUI模塊的項目,可使用“ -=”操作符。

下面1即將構建1個很小的Qt項目:

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

如果要創建1個界面,里面用到XML及網絡相干的類,那末需要包括以下模塊:

QT += core gui widgets xml network

如果你的項目是1個Qt Designer插件,使用值uiplugin指定項目構建成庫,但特定的Qt Designer插件支持,請參考:Building and Installing the Plugin。

RCC_DIR

指定Qt資源編譯器輸出文件的目錄(.qrc文件轉換成qrc_*.h文件的寄存目錄)。

例如:

unix:RCC_DIR = ../myproject/resources win32:RCC_DIR = c:/myproject/resources

RESOURCES

指定資源文件 (qrc) 的名稱。更多參考:The Qt Resource System。

例如:

RESOURCES += Resource/resource.qrc

RC_FILE

指定利用程序資源文件的名稱。這個變量的值通常是由qmake或qmake.conf處理,很少需要進行修改。

例如:

RC_FILE += myapp.rc

RC_ICONS

僅適用于Windows,指定的圖標應當包括在1個生成的.rc文件里。如果RC_FILE 和RES_FILE變量都沒有設置這才可利用。

例如:

RC_ICONS = myapp.ico

SOURCES

指定項目中所有源文件。

例如:

SOURCES = myclass.cpp \ login.cpp \ mainwindow.cpp

TARGET

指定目標文件的名稱。默許情況下包括的項目文件的基本名稱。

例如:

TEMPLATE = app TARGET = myapp SOURCES = main.cpp

上面項目會生成1個可履行文件,Windows下為myapp.exe,Unix下為myapp。

TEMPLATE

模板變量告知qmake為這個利用程序生成哪一種makefile。

可供使用的選項:

選項 說明
app 創建1個用于構建利用程序的Makefile(默許)。
lib 創建1個用于構建庫的Makefile。
subdirs 創建1個用于構建目標子目錄的Makefile,子目錄使用SUBDIRS變量指定。
aux 創建1個不建任何東西的Makefile。如果沒有編譯器需要被調用來創建目標,比如你的項目使用解釋型語言寫的,使用此功能。注:此模板類型只能用于Makefile-based生成器。特別是,它不會工作在vcxproj和Xcode生成器。
vcapp 僅適用于Windows。創建1個Visual Studio利用程序項目。
vclib 僅適用于Windows。創建1個Visual Studio庫項目。

例如:

TEMPLATE = lib SOURCES = main.cpp TARGET = mylib

TRANSLATIONS

指定包括用戶界面翻譯文本的翻譯(.ts)文件列表。

例如:

TRANSLATIONS += Resource/myapp_zh.ts \ Resource/myapp_en.ts

UI_DIR

指定來自uic的所有中間文件放置的目錄(.ui文件轉化成ui_*.h文件的寄存目錄)。

例如:

unix:UI_DIR = ../myproject/ui win32:UI_DIR = c:/myproject/ui

更多參考

  • qmake Manual(搜索助手)
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美激情校园春色 | 青草超级碰碰在线视频 | 色综合欧美亚洲另类久久 | 亚洲狠狠 | 欧美自拍网站 | 美女上床网站 | 亚洲成人高清在线 | 日韩 欧美 亚洲国产 | 久久久中文| 亚洲a在线观看 | 午夜色视频在线观看 | 亚洲一级在线 | 黄色福利网 | 亚洲国产精品久久卡一 | h视频免费观看 | 日本一区二区三区在线 视频观看免费 | 亚洲天堂第一 | h视频在线观看网站 | 五月天伊人网 | 亚洲一区日本 | 波多野结衣与公中出中文字幕 | 高清一级毛片免免费看 | 日本a∨网站| 免费91最新地址永久入口 | 性―交―乱―色―情 | 伊人久久免费 | 欧美一级手机免费观看片 | 国产精品卡哇伊小可爱在线观看 | 久久综合精品国产一区二区三区无 | 依人在线观看 | 中文字幕 亚洲 一区二区三区 | 国产在线观看第一页 | 午夜免费福利片观看 | 日韩精品视频一区二区三区 | 丁香五月好婷婷深深爱 | 日本欧美高清 | 性做久久久久久久久老女人 | 亚洲免费大片 | 国语精品91自产拍在线观看二区 | 免费国产zzzwww色 | 天天综合久久 |