在 cmake 中使用 qrc 编译 10MB+ 资源文件导致堆 space 分配失败

Compiling 10MB+ resource files with qrc in cmake results in heap space allocation failures

我正在尝试使用 CMake 使用 qrc 编译大型资源文件。

众所周知,这会耗尽计算机的所有 RAM (>32GB) 并导致编译器因堆分配错误而退出(参见 QTBUG-50468, QTBUG-55293, and QTBUG-54357

, appending CONFIG += resources_big to your .pro file automagically fixes everything。是否有可通过 CMake 访问的与此设置等效的设置?

我已经提交了错误报告 QTBUG-55680 并会在收到 Qt 的回复后更新此答案。

如果您使用的是内置的 cmake 宏,只需替换

qt5_add_resources(SRC_FILES resources.qrc) # normal resources

qt5_add_big_resources(SRC_FILES resources.qrc) # big resources

这需要 Qt5.12 和 CMake 3.9。