代码之家  ›  专栏  ›  技术社区  ›  jrharshath

如何使用qmake在单个项目中构建多个二进制文件?

  •  33
  • jrharshath  · 技术社区  · 16 年前

    我正在编写一个小的qt应用程序套件,它由一组在同一组文件上工作的小程序组成。它们是这样组织的:

    /
      app1/
        main.cpp
      app2/
        main.cpp
      app3/
        main.cpp
      common/
        project.h
        project.cpp
        somemore.h
        somemore.cpp
      appsuite.pro
    

    qmake && make

    • app1/app1
    • 附件3/附件3

    我怎么写 appsuite.pro
    我听说了一些关于 .pri 文件,但我不知道如何在我的“情况”中使用它们。


    jrh

    2 回复  |  直到 16 年前
        1
  •  36
  •   PiedPiper    10 年前

    一种方法是每个子目录都有一个.pro文件。

    appsuite.pro:

    TEMPLATE = subdirs
    SUBDIRS = common app1 app2 app3
    app1.depends = common
    app2.depends = common
    app3.depends = common
    

    app1/app1.pro:

    TARGET = app1
    SOURCES = main.cpp
    INCLUDEPATH += ../common
    LIBS += -L../common -lcommon
    

    common.pro文件应该构建一个静态库,然后可以链接到二进制文件中。

    common/common.pro:

    TEMPLATE = lib
    CONFIG = staticlib
    SOURCES = project.cpp more.cpp
    HEADERS = project.h more.h
    
        2
  •  10
  •   RedGlyph sumit sonawane    16 年前

    appsuite.pro ,例如:

    TEMPLATE = subdirs
    SUBDIRS = app1 app2 app3
    

    app1.pro app2.pro 还应单独为这些应用程序创建,并与公共/子目录相关

    您还可以在appsuite.pro中指定其他依赖项,例如,如果app1依赖于app2,则如下所示:

    app1.depends = app2