Qt之pro配置多个子工程/子模块

简介: 简述进行Qt项目开发的时候,尤其是大型项目,经常涉及多工程/多模块问题,其主要思想还是模块化,目的是为了降低程序复杂度,使程序设计、调试和维护等操作简单化。简述配置效果多工程多模块更多参考配置效果多工程如果需要管理多工程(pro),比如:库工程、界面工程,其中,每一个工程均可单独编译成功,但存在依赖关系。

简述

进行Qt项目开发的时候,尤其是大型项目,经常涉及多工程/多模块问题,其主要思想还是模块化,目的是为了降低程序复杂度,使程序设计、调试和维护等操作简单化。

配置

效果

这里写图片描述

多工程

如果需要管理多工程(pro),比如:库工程、界面工程,其中,每一个工程均可单独编译成功,但存在依赖关系。也就是说,lib2依赖于lib1,而UI依赖于lib2。

配置如下:

  • 配置TEMPLATE为subdirs设置多工程
  • 配置SUBDIRS,指定需要添加的工程模块
  • 配置CONFIG为ordered指定顺序编译

例如:

TEMPLATE = subdirs

#SUBDIRS += \
#    SubProject3 \
#    SubProject2 \
#    SubProject

SUBDIRS += $$PWD/SubProject3/SubProject3.pro \
           $$PWD/SubProject2/SubProject2.pro \
           $$PWD/SubProject/SubProject.pro

CONFIG += ordered

多模块

延续多工程,如果某一个工程功能比较多,我们必然要进行模块化。例如:界面工程包含:登录界面、设置界面、主界面。。。这时,我们就可以使用pri模块化了。

include($$PWD/Login/Login.pri)
include($$PWD/Settings/Settings.pri)
include($$PWD/MainWindow/MainWindow.pri)

更多参考

目录
相关文章
|
1月前
|
编译器 Linux C语言
QT编译安装QtMqtt子模块,WIN平台
QT编译安装QtMqtt子模块,WIN平台
|
2月前
|
开发框架 Unix Linux
深度探索:Qt CMake工程编译后的自动打包策略
深度探索:Qt CMake工程编译后的自动打包策略
34 0
|
2月前
|
IDE 编译器 开发工具
C/C++ IDE环境 (Qt Creator visual studio等) Cmake工程不显示头文件的解决方案
C/C++ IDE环境 (Qt Creator visual studio等) Cmake工程不显示头文件的解决方案
28 0
|
6月前
|
安全
04 QT - .pro文件
04 QT - .pro文件
35 0
|
1月前
|
Linux 编译器 C语言
QT编译安装QtMqtt子模块,Linux平台
QT编译安装QtMqtt子模块,Linux平台
|
2月前
|
监控 C++
C++ Qt开发:QProcess进程管理模块
Qt是一个跨平台的C++图形库,简化了窗体应用开发,支持通过拖放组件提升效率。本章节关注`QProcess`组件,它用于控制和管理进程,例如执行命令、运行可执行文件及与外部进程通信。`QProcess`提供多种方法如`start`、`waitForStarted`和`waitForFinished`等,实现启动、监控和交互。示例展示了如何使用`QProcess`获取系统进程和信息,通过`tasklist`和`systeminfo`命令,并将结果展示在`QTreeWidget`中。
31 0
C++ Qt开发:QProcess进程管理模块
|
2月前
|
SQL XML API
Qt C++ 模块 描述列表【从Qt 官网 6.5 版本翻译】
Qt C++ 模块 描述列表【从Qt 官网 6.5 版本翻译】
14 0
|
2月前
|
数据可视化 安全 API
Qt 6.1 中的模块变更(从官网文档翻译)
Qt 6.1 中的模块变更(从官网文档翻译)
7 0
|
2月前
|
传感器 API Android开发
Qt 6.2 中的模块变更(从官网文档翻译)
Qt 6.2 中的模块变更(从官网文档翻译)
16 0
|
2月前
|
数据可视化 算法 C++
C++ cmake工程引入qt6和Quick 教程
C++ cmake工程引入qt6和Quick 教程
44 0

推荐镜像

更多