c++ - 如何始终编译文件?

标签 c++ qt visual-studio-2013 qml

我有一个带有 QML 文件的 Qt 项目。每当我更改这些文件时,我都必须手动右键单击 .qrc(资源)文件并重新编译它。

如何告诉 Visual Studio 始终编译某个文件,而不仅仅是在它认为文件已更改时才编译?

(以下是其他人提出的类似问题 eclipseflashdevelop )

最佳答案

我在使用 Qt Creator 构建 qt 应用程序时遇到了同样的问题。(特别是在使用 QML 文件作为资源时。)我使用一点技巧解决了这个问题。

  • 在我的源目录中创建了一个批处理文件,例如 touch.bat。
  • 此批处理文件包含一行 copy qml.qrc/B+ ,,/Y,其中 qml.qrc 是资源文件名。
  • 在 QtCreator 中打开我的项目,然后转到“项目”->“构建步骤”->“添加构建步骤”->“自定义流程步骤”,然后输入 touch.bat
  • 每当项目构建开始时,qml.qrc就会被触及。构建系统认为 qml.qrc 被修改并构建它。

你也可以为 Visual Studio 修改这个 hack。(我没有尝试过)。尝试添加 touch.bat 作为 Visual Studio 中的构建步骤。这个想法是欺骗构建系统,让其认为您的 .qrc 已被修改。

我猜这是一个尚未解决的已知错误。检查这个bug report. 谢谢。

关于c++ - 如何始终编译文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25944219/

相关文章:

asp.net-mvc - Visual Studio 2013 调用 32 位 aspnet_compiler 而不是 64 位

jquery - VS2013 中浏览器链接的优缺点

c++ - 扩展的初始化列表和数组

c++ - [错误]请求的 'area'中属于非类类型 'r'的 'float'成员意味着什么?

Qt如何检查QtableWidget中的状态复选框

c++ - linux上大号货币(或数字)的Qt语言环境格式化

c# - 如何开始使用 Windows Phone SDK 8.1?

c++ - openssl 中已弃用的 AES_ige_encrypt() API 的替代方案

c++ - 将 xml 字符串嵌套到 xml 元素中的语法

qt - QML:在布局中设置按钮大小的问题