【发布时间】:2020-04-10 21:34:07
【问题描述】:
我正在开发一个 GTK3 应用程序,但使用 QTCreator 作为我的 IDE,只是因为我碰巧喜欢它。它工作正常,我可以轻松关闭所有 QT 特定的东西并链接 GTK 库。只有一个小问题。
GTK 使用 XML 文件来定义其资源。它带有一个程序“glib-compile-resources”,它接受一个 .gresource.xml 文件并生成一个 .c 文件*,然后可以将其包含在您的项目中。问题是 QTCreator 不知道 glib-compile-resources,所以我必须记住每次对它们进行任何更改时都要手动运行程序。
我尝试过使用自定义构建步骤,但如果我这样做了,那么 QT 每次都会重新构建文件,即使它没有更改,这会减慢进程。此外,如果 C 文件尚不存在,它将失败,并显示“没有规则使 'x.o' 需要目标 'x.c'。停止。”错误,所以无论如何我都必须手动运行程序。
有没有办法告诉 QTCreator 在遇到 .gresource.xml 文件时运行 glib-compile-resources,并将生成的 C 文件包含到最终编译中?
*除了直接的 C 源文件之外,还有其他可用选项,但 C 源对我来说是最简单和最容易的。
【问题讨论】:
标签: qt-creator