19

如何在 Qt 中指定具有不同配置的多个目标?有没有办法在一个 .pro 文件中做到这一点?

例如,我想构建以下 2 个 .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
4

2 回答 2

37

您可以为 .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
于 2010-02-15T13:44:21.060 回答
6

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

于 2010-02-14T11:16:24.327 回答