gpt4 book ai didi

qt4 - QMake不更新子目录生成文件

转载 作者:行者123 更新时间:2023-12-04 03:59:16 27 4
gpt4 key购买 nike

问题

我正在与qT Creator一起使用qmake进行多可执行QT项目。每个可执行文件都有其自己的.pro文件,所有这些文件都包含在一个拱形.pro文件中(template = subdirs)。每个单独的.pro文件还包括一个通用的.pri文件,该文件设置了DESTDIR,以便所有可执行文件最终都位于同一位置。此DESTDIR取决于是否将其编译为调试或发行版。在我们通过位于上层目录下的另一个子目录.pro添加可执行文件的集合之前,这种方法一直非常有效。整体设置如下所示:

  • All.pro
  • | -Project1.pro
  • | -Project2.pro
  • | -Subdirs.pro
  • | -| -Project3.pro
  • | -| -Project4.pro

  • 如果您有一个新 checkout 的副本,则可以运行qmake,并且一切都会起作用,直到您从调试切换到发行版为止,反之亦然。当您这样做时,Project1.pro和Project2.pro可以很好地进行更新,并将其可执行文件放在正确的目录中,但是Project3.pro和Project4.pro使用旧目录。

    尝试

    如果我手动删除所有受影响的makefile,qmake将生成新的。我想我可以编写某种预编译命令来每次都删除所有makefile,但这似乎是错误的处理方式,更不用说我需要花费大量时间来确保它在我们所有平台上都有效。

    我已经在QT 4.6.4到4.8.1中尝试过

    当我使用QT Creator时,我通过不同的构建配置在Debug和Release模式之间进行切换,这些配置模仿了我对命令谎言的操作(即添加或删除CONFIG + = debug)

    问题
  • 是什么阻止qmake更新Makefile?
  • 如果这只是qmake中的错误,最好的解决方法是什么?


  • 任何帮助都将不胜感激。

    最佳答案

    即使QMake文档指出它仅适用于项目模式(创建.pro文件),也请尝试将-r选项添加到qmake,以强制其遍历目录。

    这就是我们过去在许多深层次的SUBDIR项目中使用的方法。

    关于qt4 - QMake不更新子目录生成文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12645333/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com