在Qt / Qmake中构建多个目标

21

我该如何在Qt中使用一个.pro文件来指定多个具有不同配置的目标?

例如,我想要构建以下两个.pro文件(而不必每次手动更改.pro文件):

目标A:

QT += network
TEMPLATE = app
SOURCES += main.cpp \
    mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
RESOURCES += resource.qrc

TARGET = targetA
DEFINES += PARAMA

目标B:

  QT += network
  TEMPLATE = app
  SOURCES += main.cpp \
      mainwindow.cpp
  HEADERS += mainwindow.h
  FORMS += mainwindow.ui
  RESOURCES += resource.qrc

  TARGET = targetB
  DEFINES += PARAMB
2个回答

38

你可以为 .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

6
您可以将两个文件共有的部分移动到一个单独的.pri文件中。然后,使用include函数在目标文件中引用这个公共文件:include(common.pri)。

除此之外,您可以通过配置开关将这两个部分分开,并在使用qmake构建项目时在命令行上发送不同的配置开关。 - Caleb Huitt - cjhuitt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接