gpt4 book ai didi

c++ - 在每次构建时强制 rcc-ing qrc 文件

转载 作者:行者123 更新时间:2023-11-30 05:13:15 25 4
gpt4 key购买 nike

如何在 Visual Studio 2015 中的每个版本中强制对 qrc 文件进行 rcc-ing?我们将资源嵌入二进制文件中,因此如果 qml 或图像 Assets 等内容发生变化,我们需要运行 rcc 以获取当前状态的新 .cpp 文件。我看到了几个选项——在构建前事件中粗暴地触摸 .qrc 文件,运行一个脚本,在构建之前检查 Assets 文件夹中的所有内容,并检查时间戳并将它们与之前构建时的状态进行比较.是否有更简洁、更优雅的选择?

最佳答案

如果您要使用 CMake,则可以添加预构建任务以从构建目录中删除 your-project-name_autogen 文件夹。这会强制 CMake 在每次构建时对 qrc 文件进行 rcc。

命令可能类似于:

add_custom_command (TARGET your-project-name PRE_BUILD
COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/your-project-name_autogen)

CMake 通过将预构建事件添加到其生成的 Visual Studio 项目来实现此目的,因此您也可以仅使用 Visual Studio 复制它。如果您还没有找到预构建事件部分,请右键单击所需的项目(不是解决方案),然后选择 Properties。在 Build Events 下,应该有一个名为 Pre-Build Events 的部分。像 del your-files 这样的命令可能就足够了。

下面链接的答案提供了一些其他不错的选择。

How to delete files in Visual Studio Pre-build event command line

CMake 命令解决了包含 QML 资源的 Qt qrc 文件的问题。

关于c++ - 在每次构建时强制 rcc-ing qrc 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44047364/

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