电竞比分网-中国电竞赛事及体育赛事平台

分享

Qt:pro文件

 印度阿三17 2019-05-28


#所有工程的pro文件應(yīng)包含(include)本文件
#包含位置應(yīng)當(dāng)在pro文件的末尾

ISCS6000_HOME = $$PWD/../

#注:“$$”為獲取變量的值,“$$()”為獲取環(huán)境變量的值,不可混淆,詳見(jiàn)QT文檔
ISCS6000_PLATFORM = $$(ISCS6000_PLATFORM)
isEmpty(ISCS6000_PLATFORM) {
error("Error, ISCS6000_PLATFORM is empty!")
}

#---------------------------------------------------------------------------------------------------

#雖然Unix、Linux下不要求嚴(yán)格區(qū)分,但是為了便于管理,所有平臺(tái)區(qū)分Debug、Release
CONFIG(debug, debug|release) {
DIR_DEBUG_RELEASE=_debug
}
CONFIG(release, debug|release) {
DIR_DEBUG_RELEASE=_release
}

#---------------------------------------------------------------------------------------------------

linux-g * {
message("current os-compiler linux-g ")

#程序中可判斷此宏定義進(jìn)行條件編譯
DEFINES = OS_LINUX

#避免gcc 4.8 報(bào)警:boost/optional/optional.hpp:968:5: 警告:未使用的參數(shù)‘rhs’
#原因是gcc該函數(shù)的默認(rèn)實(shí)現(xiàn)中沒(méi)有使用rhs參數(shù),換用BOOST定義的實(shí)現(xiàn)
DEFINES = BOOST_OPTIONAL_DETAIL_NO_DEFAULTED_MOVE_FUNCTIONS=1
}

win32-msvc* {
message("current os-compiler windows-msvc")

#程序中可判斷此宏定義進(jìn)行條件編譯
DEFINES = OS_WINDOWS

#設(shè)置程序的運(yùn)行時(shí)字符編碼
QMAKE_CXXFLAGS =/execution-charset:utf-8

#由于Windows下一些第三方庫(kù)的名稱增加了“l(fā)ib”,此處進(jìn)行統(tǒng)一化處理
#各工程的pro文件中就不需要按平臺(tái)條件書(shū)寫(xiě),統(tǒng)一使用Unix、Linux的方式書(shū)寫(xiě)即可
contains(LIBS, -lprotobuf) {
LIBS -= -lprotobuf
LIBS = -llibprotobuf
}

contains(LIBS, -lzmq) {
LIBS -= -lzmq
LIBS = -llibzmq
}
contains(LIBS, -lczmq) {
LIBS -= -lczmq
LIBS = -llibczmq
}
contains(LIBS, -lprotobuf) {
LIBS -= -lprotobuf
LIBS = -llibprotobuf
}

contains(LIBS, -lprotobuf-lite) {
LIBS -= -lprotobuf-lite
LIBS = -llibprotobuf-lite
}
contains(LIBS, -lprotoc) {
LIBS -= -lprotoc
LIBS = -llibprotoc
}

contains(LIBS, -llua) {
LIBS -= -llua
LIBS = -lliblua
}

LIBS = -lws2_32
}

solaris-g * {
message("current os-compiler solaris-g ")

#程序中可判斷此宏定義進(jìn)行條件編譯
DEFINES = OS_SOLARIS

LIBS = -ldl \
-lw \
-lgen
}

#關(guān)閉BOOST的自動(dòng)連庫(kù)
DEFINES = BOOST_ALL_NO_LIB=1

#BOOST使用動(dòng)態(tài)庫(kù)
DEFINES = BOOST_ALL_DYN_LINK=1

#---------------------------------------------------------------------------------------------------

isEmpty(TARGET) {
error("Error, TARGET is empty!")
}
else {
#設(shè)置編譯過(guò)程臨時(shí)文件的路徑,保持源代碼目錄清潔
MOC_DIR = $$ISCS6000_HOME/src/temp/$$TARGET$$DIR_DEBUG_RELEASE/moc
UI_DIR = $$ISCS6000_HOME/src/temp/$$TARGET$$DIR_DEBUG_RELEASE/ui
UI_HEADERS_DIR = $$ISCS6000_HOME/src/temp/$$TARGET$$DIR_DEBUG_RELEASE/ui/include
UI_SOURCES_DIR = $$ISCS6000_HOME/src/temp/$$TARGET$$DIR_DEBUG_RELEASE/ui/src
OBJECTS_DIR = $$ISCS6000_HOME/src/temp/$$TARGET$$DIR_DEBUG_RELEASE/obj
RCC_DIR = $$ISCS6000_HOME/src/temp/$$TARGET$$DIR_DEBUG_RELEASE/rcc
}

message("OBJECTS_DIR =" $$OBJECTS_DIR)

#---------------------------------------------------------------------------------------------------

#取消為生成的動(dòng)態(tài)庫(kù)創(chuàng)建軟鏈接,減少文件數(shù)量
CONFIG = unversioned_libname unversioned_soname

#設(shè)置運(yùn)行時(shí)找動(dòng)態(tài)庫(kù)的路徑rpath,對(duì)采用ELF文件格式的系統(tǒng)有效(Unix、Linux)
#“$ORIGIN”為文件所在路徑,多個(gè)路徑間用英文冒號(hào)分隔
#Windows下優(yōu)先在程序所在目錄找動(dòng)態(tài)庫(kù)
QMAKE_RPATHDIR = :\'\$\$ORIGIN\'

#編譯器找頭文件的路徑
INCLUDEPATH = $$ISCS6000_HOME/src/include \
$$ISCS6000_HOME/src/include/common \
$$ISCS6000_HOME/src/include/public \
$$ISCS6000_HOME/src/include/protocol \
$$ISCS6000_HOME/src/idl_files \
$$ISCS6000_HOME/src/3rd/include \
$$ISCS6000_HOME/src/3rd/include/breakpad \
$$ISCS6000_HOME/src/3rd/include/QtXlsx/xlsx \

#連接器找直接鏈接的庫(kù)的路徑
LIBS = -L$$ISCS6000_HOME/platform/$$ISCS6000_PLATFORM$$DIR_DEBUG_RELEASE/

#連接器找隱含依賴(直接鏈接的庫(kù)所鏈接的庫(kù))庫(kù)的路徑
QMAKE_RPATHLINKDIR = $$ISCS6000_HOME/platform/$$ISCS6000_PLATFORM$$DIR_DEBUG_RELEASE/

#生成路徑,可執(zhí)行文件和庫(kù)文件都放在一起
DESTDIR = $$ISCS6000_HOME/platform/$$ISCS6000_PLATFORM$$DIR_DEBUG_RELEASE/

message("DESTDIR =" $$DESTDIR)

來(lái)源:http://www./content-4-212051.html

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多