zoukankan      html  css  js  c++  java
  • qt creator源码全方面分析(3-4)

    src.pro

    前面我们介绍了qtcreator.pro和qtcreator.pri。我们在qtcreator.pro的

    SUBDIRS = src share
    

    可知,第一个子项目为src文件夹。下面我们分析核心源码目录src的项目文件src.pro。

    加载qtcreator.pri

    第一行为

    include(../qtcreator.pri)
    

    不做解释,具体见往期文章qt creator源码全方面分析(3-2)

    指定TEMPLATE

    接下来是

    TEMPLATE  = subdirs
    CONFIG   += ordered
    

    不做解释,具体见往期文章qt creator源码全方面分析(3-1)

    指定SUBDIRS

    接下来是

    QBS_DIRS = 
        qbscorelib 
        qbsqtprofilesetup 
        qbsapps 
        qbslibexec 
        qbsplugins 
        qbsstatic
    
    qbscorelib.subdir = shared/qbs/src/lib/corelib
    qbsqtprofilesetup.subdir = shared/qbs/src/lib/qtprofilesetup
    qbsqtprofilesetup.depends = qbscorelib
    qbsapps.subdir = shared/qbs/src/app
    qbsapps.depends = qbsqtprofilesetup
    qbslibexec.subdir = shared/qbs/src/libexec
    qbslibexec.depends = qbscorelib
    qbsplugins.subdir = shared/qbs/src/plugins
    qbsstatic.file = shared/qbs/static.pro
    
    exists(shared/qbs/qbs.pro) {
        isEmpty(QBS_INSTALL_DIR):QBS_INSTALL_DIR = $$(QBS_INSTALL_DIR)
        isEmpty(QBS_INSTALL_DIR):SUBDIRS += $$QBS_DIRS
    }
    TR_EXCLUDE = shared/qbs
    

    首先设置了QBS_DIRS文件夹内容列表,然后指定子目录和依赖项。

    接下来是

    SUBDIRS += 
        libs 
        app 
        plugins 
        tools 
        share/qtcreator/data.pro 
        share/3rdparty/data.pro
    

    这里我们可以直到子项目的编译顺序,依次为libs库,app可执行程序,plugins插件库,tools工具集,share非代码共享文件集。


    原创造福大家,共享改变世界

    献出一片爱心,温暖作者心灵


  • 相关阅读:
    Maven私服安装
    Maven运行的方式
    Maven传递依赖的范围
    Maven子模块
    Maven父工程
    Maven项目指定JDK版本
    Maven传递依懒
    Maven概念模型
    Swift -欢迎界面1页, 延长启动图片的显示时间(LaunchImage)
    Swift
  • 原文地址:https://www.cnblogs.com/codeForFamily/p/qt-creator-ide-source-learn-3-4.html
Copyright © 2011-2022 走看看