题
我正在编写一个小型 qt 应用程序套件,它由一组处理同一组文件的小程序组成。它们的组织方式如下:
/ app1/ main.cpp app2/ main.cpp app3/ main.cpp common/ project.h project.cpp somemore.h somemore.cpp appsuite.pro
当我做 qmake && make
, ,我想要构建以下二进制文件:
- 应用1/应用1
- 应用2/应用2
- 应用程序3/应用程序3
我该怎么写 appsuite.pro
像这样工作?
我听说过一些关于 .pri
文件,但我不知道如何在我的“情况”中使用它们。
帮助表示感谢,
杰瑞赫
解决方案
一种方法是每个子目录都有一个 .pro 文件。
应用程序套件.pro:
TEMPLATE = subdirs
SUBDIRS = common app1 app2 app3
app1.depends = common
app2.depends = common
app3.depends = common
应用程序1/应用程序1.pro:
TARGET = app1
SOURCES = main.cpp
INCLUDEPATH += ../common
LIBS += -L../common -lcommon
common.pro 文件应该构建一个静态库,然后您可以链接到二进制文件。
常见/common.pro:
TEMPLATE = lib
CONFIG = staticlib
SOURCES = project.cpp more.cpp
HEADERS = project.h more.h
其他提示
一种方法是创建您的全球项目 appsuite.pro
, , 像这样:
TEMPLATE = subdirs
SUBDIRS = app1 app2 app3
子项目 app1.pro
和 app2.pro
还应该单独为这些应用程序创建,并依赖于 common/ 子目录
您还可以在 appsuite.pro 中指定其他依赖项,例如,如果 app1 依赖于 app2,如下所示:
app1.depends = app2
不隶属于 StackOverflow