- 1. Қате сипаттамасы
- 2. Жауап
Біздің жоба кәдімгі белгішелер мен svg кескіндері сияқты өте үлкен ресурстарды пайдаланады. Бір сәтте жоба 16 ГБ жадының шағын көлемі бар әзірлеушінің компьютерінде құруды тоқтатты.
Мәселе мынада болды: ресурс файлдарын құрастыру кезінде барлық қол жетімді жад бақылаусыз тұтынылады, ал егер жад жеткіліксіз болса, онда құрастыру сәтсіз аяқталады.
Қате сипаттамасы
MSVC компиляторын пайдаланған кезде қате келесідей болады:
қате: C1060: компиляторда жинақ кеңістігі жоқ
Жауап
Дегенмен, үлкен ресурс файлдарын жинауды оңтайландыру үшін Qt-ге арнайы жалау көптен бері қосылды. Яғни, бұл қатені шешеді.
Бұл жалауша resources_big деп аталады және келесідей pro файлына қосылады.
CONFIG += ресурстар_үлкен
Бір қызығы, бұл жалау өте ұзақ уақыт бұрын қосылған, бірақ ол әлі де құжатталмаған, бірақ ол Qt жобасының мысалдарында да бар. Немесе оның сипаттамасы Qt құжаттамасында өте терең жасырылған.
Совет: подключайте ресурсы динамически.
Используйте Resource Compiler:
https://doc.qt.io/qt-5/rcc.html
Используем, там где требуется :)
Добрый день, Евгений!
А можно ли этот флаг, каким-то образом написать при компиляции программы с использованием PyQT? Например с помощью Nuitka?
resources_big - это флаг для сборки c++ приложения. Если Nuitka не предоставляет какой-либо функционал для прикручивания конфигурационных директив типа CONFIG при компиляции, то сомневаюсь. Про сам Nuitka я первый раз слышу, не сталкивался с этой штукой.
А так я согласен с Михаилом, как он вам ответил на форуме, нужно использовать динамические ресурсные файлы.