基本的一些pro文件常用的意思,下面属于这是我用QT项目pro的配置
#指定项目中用到的所有模块,默认值为 core 和 gui,中间用 += 符号连接。
QT += core gui widgets
#指定程序成功运行后生成的可执行文件的名称,中间用 = 符号连接。
TARGET = IKapCamera
#指定如何运行当前程序,默认值为 app,表示当前程序是一个应用程序,可以直接编译、运行。常用的值还有 lib,表示将当前程序编译成库文件。
TEMPLATE = lib
TARGET = $$qtLibraryTarget($$TARGET)
#一些配置信息
CONFIG += shared
#在程序中新定义一个指定的宏,比如 DEFINES += xxx,如同在程序中添加了 #define xxx 语句。
DEFINES += IKapCamera_SHARED_EXPORT
DEFINES += TOLUAPP_DLL
DEFINES += GENLUA_APP
#生成目标的路径。如:DESTDIR = ../bin/ 则目标文件的路径为当前pro文件所在目录的上一级的bin目录下
DESTDIR=$$PWD/../../Star/models
#指定工程要用到的头文件路径,一般包括用户自定义的头文件路径或没有放入系统头文件路径的头文件路径
INCLUDEPATH += $$PWD/../../StarInclude
#加载动态库文件。如:LIBS+=./mitab/libmitab.so
LIBS += -L$$PWD/../../StarLibs/ -ltoluapp -L$$PWD/../../StarLibs/ -llua
#变量来存储静态链接库的依赖关系。每次构建应用程序时,它都会强制您的库重新链接。
#如果您没有指定此变量并且您更新并重建您的库,您的程序仍将使用旧库。
PRE_TARGETDEPS += $$PWD/../../StarLibs/toluapp.lib $$PWD/../../StarLibs/lua.lib
#工程的依赖路径
DEPENDPATH += $$PWD/../../StarLibs/
#指定项目中包含的所有 .cpp 源文件。
SOURCES += \
IKapCamera.cpp \
lua_IKapCamera.cpp
#指定项目中包含的所有 .h 头文件。
HEADERS += \
IKapCamera.h \
Include/IKapBoard.h \
Include/IKapC.h \
Include/IKapCDef.h \
Include/IKapCStat.h \
Include/IKapCType.h
DISTFILES += \
IKapCamera.pkg
#通过QMAKE_CXXFLAGS来给编译器传递编译开关。
msvc:QMAKE_CXXFLAGS += -execution-charset:utf-8
if(contains(DEFINES,GENLUA_APP)){
build.target=pre_build_cmds
build.commands=..\..\Star\GenModelLua.exe IKapCamera
QMAKE_EXTRA_TARGETS += build
PRE_TARGETDEPS += pre_build_cmds
}
msvc:QMAKE_LFLAGS_RELEASE = /debug /INCREMENTAL:NO
msvc:QMAKE_CXXFLAGS_RELEASE = -O2 -Zi -MD
include($$PWD/../UIEventHandle/UIEventHandle.pri)
include($$PWD/../Variant/Variant.pri)
include($$PWD/../QsLogs/QsLogs.pri)
FORMS += \
IKapCamera.ui
win32: LIBS += -L$$PWD/lib/ -lIKapBoard
INCLUDEPATH += $$PWD/include
DEPENDPATH += $$PWD/include
win32: LIBS += -L$$PWD/lib/ -lIKapC
INCLUDEPATH += $$PWD/include
DEPENDPATH += $$PWD/include
还有些编译器配置不懂,后续添加