日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

pro文件

發布時間:2023/12/2 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pro文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

配置

注釋

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

CONFIG

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

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

選項

說明

release

項目以release模式構建。如果也指定了debug,那么最后一個生效。

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

自動生成一個.cpp文件,包含在.pro中指定的預編譯頭文件。

ordered

使用subdirs模板時,此選項指定應該按照目錄列表的順序處理它們。

precompile_header

可以在項目中使用預編譯頭文件的支持。

warn_on

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

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下默認的),該項目將被處理三次:一次生成一個”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

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/included:/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應用程序無需進一步的配置就可以構建。

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

下面一行將構建一個很小的Qt項目:

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

如果要創建一個界面,里面用到XML及網絡相關的類,那么需要包含如下模塊:

QT += core gui widgets xml network

如果你的項目是一個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) 的名稱,參考:Qt之資源系統

例如:

RESOURCES += Resource/resource.qrc

RC_FILE

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

例如:

RC_FILE += myapp.rc

·????????1

RC_ICONS

僅適用于Windows,指定的圖標應該包含在一個生成的.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

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

TEMPLATE

模板變量告訴qmake為這個應用程序生成哪種makefile。

可供使用的選項:

選項

說明

app

創建一個用于構建應用程序的Makefile(默認)。

lib

創建一個用于構建庫的Makefile。

subdirs

創建一個用于構建目標子目錄的Makefile,子目錄使用SUBDIRS變量指定。

aux

創建一個不建任何東西的Makefile。如果沒有編譯器需要被調用來創建目標,比如你的項目使用解釋型語言寫的,使用此功能。注:此模板類型只能用于Makefile-based生成器。特別是,它不會工作在vcxproj和Xcode生成器。

vcapp

僅適用于Windows。創建一個Visual Studio應用程序項目。

vclib

僅適用于Windows。創建一個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

總結

以上是生活随笔為你收集整理的pro文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。