Construindo vários alvos no qt / qmake
Pergunta
Como eu poderia especificar vários alvos com diferentes configurações no QT? Existe uma maneira de fazer isso em um arquivo .pro?
Por exemplo, eu gostaria de construir os 2 arquivos .Pro a seguir (sem precisar alterar manualmente o arquivo .pro cada vez):
Targaa:
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
Solução
Você pode definir várias configurações para um arquivo .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
}
Você pode usar o parâmetro de configuração durante a execução do QMake.
qmake x.pro CONFIG+=configA
Outras dicas
Você pode mover as partes que ambos os arquivos têm em comum para separar o arquivo .PRI. Posteriormente, o arquivo comum pode ser referenciado nos arquivos de destino usando a função incluída: incluir (Common.pri)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow