强制 QtCreator 在构建时运行“qmake”

2024-03-11

在我的一些项目中,我使用 .pro 文件中配置的一些预构建步骤。所以qmake每当激活时都会执行此步骤。

现在在 QtCreator 中,当我构建时(也是完全重建整个项目时),它并不总是运行qmake,因为它试图变得聪明并优化它。它仅在 .pro 文件更改时运行它,从而导致多个问题。

另外一个常见的问题是,当你创建一个继承自 QObject 的类时after在该文件上运行 qmake,它不会注意到它,因此not run moc在上面。此类问题只需手动运行即可解决qmake通过 QtCreator 中的“构建”菜单。但如果我忘记了这一点,我有时会对因此而得到的编译错误感到困惑,这真的很烦人。

(如何)我可以强制 QtCreator 执行此步骤吗always构建项目时?

我考虑过添加 qmake 作为构建步骤在项目配置中,但这似乎是解决此问题的肮脏黑客。


另一个肮脏的黑客,但更灵活一点:在 Linux/Mac 上添加“touch yourprojectfile.pro”作为构建步骤或分配外部工具调用。就像 touch "*.pro" 在当前项目工作目录中运行。当 pro 文件被更改(通过 touch 模仿)时,将执行 qmake。不是很干净,但是外部工具加热键解决方案比将 qmake 添加到每个项目的构建步骤中更灵活。

更新: 我终于找到了一个完全令人满意的解决方案。 在 pro 文件中添加:

  qmakeforce.target = dummy
  qmakeforce.commands = rm -f Makefile ##to force rerun of qmake
  qmakeforce.depends = FORCE
  PRE_TARGETDEPS += $$qmakeforce.target
  QMAKE_EXTRA_TARGETS += qmakeforce

这会删除生成的 Makefile,从而强制 qmake 为每个构建重新运行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

强制 QtCreator 在构建时运行“qmake” 的相关文章

  • Qt 5.3。 QtWidgets:没有这样的文件或目录#include

    我想编译 Qt 示例 我收到错误 QtWidgets 没有这样的文件或目录 include greaterThan QT MAJOR VERSION 4 QT widgets does not help QT widgets does no
  • 如何在C++程序中获得debug/release条件编译

    在大型 C Qt QMake qtcreator 项目中 我想执行一些测试 但仅限于使用调试标志进行编译时 有没有办法告诉 g 代码的某些小部分只能在调试模式下编译 执行此操作的标准方法是依赖于宏NDEBUG 由宏使用assert 定义于
  • Qt 和 QMake 构建目录

    我想从源代码树中构建 qt 和 qt 应用程序 你知道如何使用configure和qmake从命令行设置 obj目录吗 如果我正确理解问题你应该设置对象目录 http qt nokia com doc 4 5 qmake variable
  • 从 Qt 中的 pro 文件获取值

    我在 Windows XP 中使用 Qt 4 5 我的 pro 文件有变量VERSION 1 0 现在我需要读取这个变量并获取它的值 1 0 来自源代码 这样我就不必在源代码中维护版本的另一个变量 我刚刚读取了 pro 文件并更新了它 这样
  • qwt 图表示例 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 大家好 我正在使用 qwt 我是新手 我想使用 qwt 和 qt 创建者绘制图表 我不知道要在我的 qt 项目中包含哪些库来绘制图表 我已
  • 在 Qt Creator 中推广小部件

    Qt 创建者可以选择将一个小部件提升为从基本小部件派生的自定义创建的类 我想使用它来将小部件提升为当前项目中的类 Qt 创建者询问我有关类名和头文件名的信息 这些值直接转到 ui文件 然后到ui myform h 问题是该文件可能 通常是
  • 以编程方式设计 GUI - 嵌套布局和多个小部件 (Qt) 的良好实践

    我有兴趣更好地理解Qt为此我想see 如何仅以编程方式完成嵌套布局和多个小部件 GUI 的相对复杂示例 即不使用 Qt Creator 的设计 我见过几个示例代码仅演示非常简单的布局 并且几乎总是不使用头文件 事实上我见过的大多数例子 du
  • 如何消除qmake的“警告:找不到:”?

    我在用着PRE TARGETDEPS生成源文件 我将生成的源文件添加到SOURCES用于编译 我的生成器的输出显然在 qmake 运行时不存在 所以 qmake 输出WARNING Failure to find 对于每个要创建的源文件 既
  • QML 不显示 svg 图像

    我编写了一个简单的 QML ui 它使用一些 svg 图像 当我在桌面上执行该应用程序时 一切都很好 显示了 UI 以及上面的 svg 图像 当我尝试在嵌入式设备 运行嵌入式 Windows 上执行应用程序时 会出现问题 在这种情况下 会显
  • 在 QtCreator 中查看数组内容

    调试时是否可以在 Qt Creator 中查看数组的内容 似乎检测到我的数组是一个数组而不是一个指针 此外 我可以点击一个箭头 就像展开一样 但之后什么也没有显示 当我试穿的时候std vector Qt Creator 设法按预期显示内容
  • 如何在Qt中设置编译器?

    我对 Qt 完全陌生 我下载了离线版本 Qt 5 3 2 for Windows 64 bit VS 2013 OpenGL 573 MB 我无法编译我的项目 I have Qt Creator 3 2 1 开源 基于Qt 5 3 2 MS
  • qt项目如何设置安装路径

    我正在寻找与 qmake configure prefix 等效的内容 基本上 我想覆盖默认的安装 部署目录 这是如何用命令行 qmake 指定的 我还使用 QtCreator 构建了很多 gui 项目 并且我想知道如何在 QtCreato
  • Qt程序部署到多平台,如何?

    我是 Qt 编程新手 我想开发一个程序 我想在 Windows Linux ubuntu 和 Mac 上运行 听说Qt支持多平台应用程序开发 但我的问题是 在我部署或编译后 任何 Qt 库都需要在 Ubuntu 中运行这个应用程序吗 如果您
  • Qt Creator:如何区分 win32 和 win64

    我必须在 pro 文件中执行类似的操作 win32 LIBS L 3rdparty libusb win32 lib msvc llibusb else win64 LIBS L 3rdparty libusb win32 lib msvc
  • QtCreator 调试暂停停在代码而不是汇编处

    如何配置 QtCreator 以便在调试并按下暂停时它会显示当前正在处理的代码 现在显示汇编 无法在任何地方找到有关此问题的答案 我使用的是 Windows 7 我在 Ubuntu 16 04 中使用 Qt Creator 4 2 2 时遇
  • Qt Creator 中的 *.qss 文件没有语法突出显示?

    It s wired that Qt Creator didn t have a syntax highlight for its own style file format or did i missed some packages 版本
  • 如何阻止 Qt Creator 将可执行文件放置在“调试”子目录中?

    我正在 Qt Creator 中构建一个项目 虽然我不关心中间 obj 文件去哪里 但重要的是最终的可执行文件应放入 并运行 许多依赖项 DLL 等所在的特定目录中 被发现 因此 在 Qt Creator 中 我选择 Shadow Buil
  • 如何搭建qtwayland?

    我花了一整天的时间尝试使用QtWayland Compositor 1 0在 Qt 创建者中 我已经遵循了从那里开始的所有步骤https wiki qt io QtWayland https wiki qt io QtWayland但我收到
  • 如何在 QT 中绘制点?

    我正在用 QT 用 C 编写一个应用程序 其中有 n 个点并计算它的凸包 然而 一旦计算出来 我不知道如何绘制点并绘制船体的边界 制作菜单按钮等很简单 但我不确定我是否知道执行此操作的工具 你怎么做到这一点 图形视图 addEllipse
  • 相对文件路径的区别:Qt Creator的调试模式和发布模式

    QFile file test txt if file open QIODevice ReadOnly qDebug lt lt You got me 我在用 Qt 4 8 6 与 MSVC 2010 Qt 创建者 3 1 1 Window

随机推荐

  • Eclipse 中的 Maven 插件“标记无效”(Mars - 4.5.0)[重复]

    这个问题在这里已经有答案了 我有一个新创建的 Maven 项目 并将其导入到 Eclipse 中 Eclipse 抱怨其中一个插件
  • 使用 v-for 时的 Vue.js 资源文件路径

    我刚刚开始使用 Vue js 在加载静态图像 例如我的徽标 时访问资产文件夹非常简单 img src assets logo png 但是 我使用 v for 使用示例数据创建多个列表项 这是我的模板 ul li img h2 class
  • 如何在iOS sdk中使用正则表达式

    如何在iOS sdk中使用正则表达式 我需要验证UITextField使用正则表达式只允许数值进入UITextField 在你的 shouldChangeCharactersInRange 中你可以这样做 BOOL textField UI
  • 使用 Swift 访问 iOS 地址簿:数组计数为零

    我正在尝试编写一个简单的方法来要求用户访问他们的地址簿 然后打印出地址簿中每个人的姓名 我看过很多教程解释如何在 Objective C 中做到这一点 但我很难将它们转换为 swift 这是我到目前为止所做的事情 下面的块在我的 viewD
  • 如何创建 NSDate 日期对象?

    我怎样才能创建一个NSDate从日 月 年开始 似乎没有任何方法可以做到这一点 他们已经删除了类方法dateWithString 他们为什么要那样做 您可以为此编写一个类别 我这样做了 代码如下 NSDateCategory h impor
  • ' aria-label='如果页面的 url 带有 '#' 且嵌入了 flash/swf,IE 标题将更改为 '> 如果页面的 url 带有 '#' 且嵌入了 flash/swf,IE 标题将更改为

    问题是 如果 IE 6 0 嵌入了 Flash 内容 并且页面的 url 中某处有 那么当 Flash 内容加载时 或者如果用户与其交互 则标题窗口中 更改为散列后的内容 e g http adobeflashwebsite com ind
  • C# WCF插件设计与实现

    我想得到一些建议 我正在开发一个系统 该系统将在运行时加载插件并要求它们通过 WCF 端点可用 我将有一个仅真正用于配置的 MVC 3 Web 应用程序 以及一个将加载不同插件的类库 核心 我希望得到一些有关如何解决此问题的指导 我想加载该
  • 为什么 readObject 和 writeObject 是私有的,为什么我要显式写入瞬态变量?

    我正在阅读有关序列化的章节有效的Java 谁调用了 readObject 和 writeObject 为什么这些方法被声明为私有 下面是书中的一段代码 StringList with a reasonable custom serializ
  • 服务器监听多个端口 [Java]

    我试图弄清楚如何创建一个 java 程序 该程序可以侦听多个端口并根据客户端通话的端口执行不同的操作 我已经看到并理解了基本的客户端 服务器程序 http systembash com content a simple java tcp s
  • LINQ 在类项目上不同?

    注意这个问题是类似的this one https stackoverflow com questions 741299 linq to sql distinct with anonymous types但我不使用 linq to sql 因
  • 拖放生成 XSLT 以将 XML 显示为 HTML?

    我搜索并浏览了 XSLT 问题 并查看了 Altova 的产品 但还没有查看 Stylus 的产品 我不想再听到 XSLT 很复杂且难以手动编码 HTML 刚开始流行时就是这样 我知道 苹果和橘子的比较 因为 XSLT 是一种处理语言 而
  • 如何将变量传递给 Pug 的 `script.` 块?

    我的代码中有这个代码index pug file doctype html html head title title body script src source script for var event of events VClien
  • Cordova 在没有 Ionic 的设备上热重载

    我使用 Cordova 没有 Ionic 或任何其他框架 我的问题是 如果不使用 Ionic 我找不到 Cordova 的任何热重载功能或插件 有没有什么解决方案可以在没有任何框架的情况下在iOS模拟器上实时重新加载 我在 Cordova
  • 我需要有关 MKMapView 崩溃的帮助

    我的实时应用程序最常见的崩溃之一是 MKMapView 崩溃 它在内部方法崩溃 MKMapView mapTileViewDidFinishLoading 在我的测试过程中 我无法追溯崩溃 但在 iTunes Connect 的崩溃报告中非
  • AFNetworking - 如何发出 POST 请求

    编辑 07 14 正如比尔 伯吉斯 Bill Burgess 在他的回答的评论中提到的 这个问题与version 1 3 of AFNetworking 对于这里的新人来说可能已经过时了 我对 iPhone 开发还很陌生 我使用 AFNet
  • 无法捕获 Win32Exception

    因此 我在实体框架 任何 事务期间收到 Win32Exception 数据库机器已离线 因此这是可以预料的 这是一个监控应用程序 所以我想记录机器不可用 但它没有捕获错误 错误是 Elmah 报告 System ComponentModel
  • Vue devServer 代理没有帮助,我仍然收到 CORS 错误

    我正在使用 vue cli 3 x 并且在我的 vue config js 中我有这个 devServer proxy api ws true changeOrigin true target http localhost 8080 但我不
  • 为什么java中的构造函数不被继承?

    我是java编程语言的初学者 最近我学习了构造函数java中不能继承 谁能解释一下why 我已经读过这个链接 https stackoverflow com questions 4417797 why is inheriting const
  • 通过 IP 地址限制访问的最佳方法?

    对于 ASP NET C 应用程序 我们需要根据 IP 地址限制访问 实现这一目标的最佳方法是什么 一种方法是使用Http模块 http www codeproject com KB aspnet http module ip securi
  • 强制 QtCreator 在构建时运行“qmake”

    在我的一些项目中 我使用 pro 文件中配置的一些预构建步骤 所以qmake每当激活时都会执行此步骤 现在在 QtCreator 中 当我构建时 也是完全重建整个项目时 它并不总是运行qmake 因为它试图变得聪明并优化它 它仅在 pro