如何在Qt中指定具有不同配置的多个目标?有没有办法在一个.pro文件中执行此操作?
例如,我想构建以下2个.pro文件(无需每次都手动更改.pro文件):
targetA:
QT += network
TEMPLATE = app
SOURCES += main.cpp \
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
RESOURCES += resource.qrc
TARGET = targetA
DEFINES += PARAMA
targetB:
QT += network
TEMPLATE = app
SOURCES += main.cpp \
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
RESOURCES += resource.qrc
TARGET = targetB
DEFINES += PARAMB
答案 0 :(得分:35)
您可以为.pro文件定义多个配置:
QT += network
TEMPLATE = app
SOURCES += main.cpp \
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
RESOURCES += resource.qrc
configA {
TARGET = targetA
DEFINES += PARAMA
}
configB {
TARGET = targetB
DEFINES += PARAMB
}
您可以在运行qmake时使用CONFIG参数。
qmake x.pro CONFIG+=configA
答案 1 :(得分:6)
您可以将两个文件共有的部分移动到单独的.pri文件中。之后,可以使用include-function:include(common.pri)
在目标文件中引用公共文件