Eliberarea instrumentului de asamblare Qbs 1.17

Introdus eliberarea sculelor de asamblare QBS 1.17. Это четвёртый выпуск после ухода компании Qt Company от разработки проекта, подготовленный силами сообщества, заинтересованного в продолжении разработки Qbs. Для сборки Qbs в числе зависимостей требуется Qt, хотя сам Qbs рассчитан на организацию сборки любых проектов. Qbs использует упрощённый вариант языка QML для определения сценариев сборки проекта, что позволяет определять достаточно гибкие правила сборки, в которых могут подключаться внешние модули, использоваться функции на JavaScript и создаваться произвольные правила сборки.

Limbajul de scripting folosit în Qbs este adaptat pentru a automatiza generarea și analizarea scripturilor de compilare de către mediile de dezvoltare integrate. În plus, Qbs nu generează fișiere make, dar el însuși, fără intermediari precum utilitarul make, controlează lansarea compilatoarelor și a link-urilor, optimizând procesul de construire pe baza unui grafic detaliat al tuturor dependențelor. Prezența datelor inițiale despre structură și dependențe în proiect vă permite să paralelizați eficient execuția operațiunilor în mai multe fire. Pentru proiectele mari care constau dintr-un număr mare de fișiere și subdirectoare, performanța reconstrucției folosind Qbs poate fi de câteva ori mai rapidă decât make - reconstrucția se realizează aproape instantaneu și nu obligă dezvoltatorul să piardă timpul în așteptare.

Să ne amintim că în 2018 a fost Compania Qt primit decizia de a opri dezvoltarea Qbs. Qbs a fost dezvoltat ca înlocuitor pentru qmake, dar în cele din urmă s-a decis să se utilizeze CMake ca principal sistem de construcție pentru Qt pe termen lung. Dezvoltarea Qbs a continuat acum ca un proiect independent susținut de comunitate și de dezvoltatorii interesați. Infrastructura companiei Qt continuă să fie utilizată pentru dezvoltare.

Principalul inovații Qbs 1.17:

  • S-a adăugat suport inițial Qt 6.
  • Добавлен модуль capnp для использования протокола сериализации данных Căpitanul Proto в приложениях на C++.
  • Adăugat возможность указания переменных product и project в правой части определений свойства moduleProvider (например, «moduleProviders.mygenerator.chooseLettersFrom: project.beginning»).
  • Добавлена поддержка инструментариев для сборки проектов C/C++ для работы поверх оборудования без ОС (bare-metal, с выставлением параметра qbs.targetPlatform в значение ‘none’): KEIL (ARMCLANG, C166, C251), IAR (CR16, AVR32, M68K) и
    GCC (CR16, M68K, M32C, M32R, Super-H, V850, RISC-V, Xtensa).

  • Добавлена поддержка среды разработки Xcode 12.0 для macOS.
  • Проведена чистка модулей «Qt for Android».
  • Улучшена поддержка сборки для платформы Android. В модуль Android.sdk добавлено свойство packageType для создания пакетов «aab» (Android App Bundles) вместо «apk», а также свойство aaptName для использования нового aapt2 (Android Asset Packaging Tool). Прекращена поддержка сборки Android-приложений для платформ ARMv5, MIPS и MIPS64.

Sursa: opennet.ru

Adauga un comentariu