Evgenij LegotskojOct. 7, 2019, 3:34 a.m.

Undocumented QMake - CONFIG += resources_big

Content

Our project uses a very large number of resources, both ordinary icons and svg images. At some point, the project stopped assembling on developers' PCs with a small memory capacity of 16 GB.

The problem turned out to be that when compiling resource files, all available memory is uncontrollably consumed, and if it is not enough, then the assembly fails.

Error description

When using the MSVC compiler, the error is as follows:

error: C1060: compiler is out of heap space

Decision

However, Qt has long added a special flag that optimizes the assembly of huge resource files. That is, it solves this error.

This flag is called resources_big and is added to the pro file as follows

CONFIG += resources_big

It is noteworthy that this flag was added a very long time ago, but at the same time it is still not documented, although it is even present in the Qt project examples. Or its description is hidden very deep in Qt documentation.

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
- company blog
Support the author Donate
MP

Совет: подключайте ресурсы динамически.
Используйте Resource Compiler:
https://doc.qt.io/qt-5/rcc.html

Используем, там где требуется :)

R

Добрый день, Евгений!
А можно ли этот флаг, каким-то образом написать при компиляции программы с использованием PyQT? Например с помощью Nuitka?

resources_big - это флаг для сборки c++ приложения. Если Nuitka не предоставляет какой-либо функционал для прикручивания конфигурационных директив типа CONFIG при компиляции, то сомневаюсь. Про сам Nuitka я первый раз слышу, не сталкивался с этой штукой.
А так я согласен с Михаилом, как он вам ответил на форуме, нужно использовать динамические ресурсные файлы.

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Timeweb

Let me recommend you the excellent hosting on which EVILEG is located.

For many years, Timeweb has been proving his stability.

For projects on Django I recommend VDS hosting

View Hosting
NI

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:90points,
  • Rating points8
NI

C++ - Тест 003. Условия и циклы

  • Result:92points,
  • Rating points8
NI

C++ - Test 001. The first program and data types

  • Result:80points,
  • Rating points4
Last comments
D

Django - Tutorial 001. Deploying a site on Django + PostgreSQL + Gunicorn + Nginx

А почему нельзя? Где можно об этом почитать? Киньте, пожалуйста, в меня ссылкой.
D

Django - Tutoral 049. Optimizing Django Performance with a Real Project

Огромное спасибо вам за статью! Для меня стали открытием select_related и prefetch_related
t
  • t1m4
  • Feb. 24, 2021, 2:56 a.m.

Django - Tutorial 052. Redefining a User Model

В данном случае я заходил под superuser но все равно не появлялись эти поля

Django - Tutorial 001. Deploying a site on Django + PostgreSQL + Gunicorn + Nginx

Поднял сервис с помощью systemd, вот по этому мануалу: https://habr.com/ru/post/501414/
t
  • t1m4
  • Feb. 23, 2021, 7:11 a.m.

Django - Tutorial 052. Redefining a User Model

А как дать ему эти права?
Now discuss on the forum
  • BlinCT
  • March 6, 2021, 10:57 a.m.

Работа с QJsonObject и получение данных из него

Вопрос решен. Оказалось что я не очень внимательно прочитал описание метода root.take("devices") Оказывается он удаляте ключ, а занчит и все данные по нему. И по этому после этого…

Как совместить таблицу и дерево в Qt

Добрый день. Имеется таблица QTableView, нужно у некоторых строк сделать возможность раскрытий, как в QTreeVidget и отоборажать в них аналогичные строки. Скажите пожалуйста, как это мо…
KM

не получаеться добавить списки в списокб ошибка в петле

решение: с line 99: listy = [] lista = [] for single_lp in max_list_from_all_plates: suma = 0 lists = [] for sign in single_lp: Highest_score=0 bigl…
KM

Не отдаётся статика на виртуальной машине

В итоге выставил 775 на все файлы проекта и всё заработало. Но я не уверен, что так правильно.
About
Services
© EVILEG 2015-2020
Recommend hosting TIMEWEB