gpt4 book ai didi

c++ - Qt 构建顺序(rcc -> uic -> moc -> 预处理器 -> 普通编译器)?

转载 作者:太空狗 更新时间:2023-10-29 21:37:22 26 4
gpt4 key购买 nike

我想知道这些构建工具在 QT 项目中的调用顺序:
UIC - MOC - RCC - 预处理器 - 普通的 c++ 编译器(例如 Gcc)

最佳答案

第一步:

UIC 处理 *.ui 文件并生成 *.h 输出MOC 处理 .h 文件(带有 Q_OBJECT 宏的文件)并生成 moc_.cpp 文件RCC 处理 *.rc 文件并生成 *.cpp 文件

第二步:

所有你编写的 .h/.cpp 文件和所有生成的 .h/.cpp 文件都被你的“普通”编译器作为“普通”源代码处理.

要获得完整的答案,您应该知道 qMake 在这些文件之间创建依赖关系。例如,如果“foo.h”文件包含“Q_OBJECT”宏,MOC 将生成“moc_foo.cpp”文件。但是 qMake 会添加一个依赖项:“moc_foo.cpp”将被标记为依赖于“foo.h”。所以,如果你修改“foo.h”文件,你的编译器知道 MOC 应该在这个文件上重新运行以产生新版本的“moc_foo.cpp”

关于c++ - Qt 构建顺序(rcc -> uic -> moc -> 预处理器 -> 普通编译器)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37899204/

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