Излизането на инструмента за компилация Qbs 1.20

Представен е новият релиз на сборочния инструментариум Qbs 1.20. Това е седмият релиз след напускането на компанията Qt Company от проекта, подготвен от общността, заинтересована в продължаването на разработката на Qbs. За компилация, Qbs изисква Qt като зависимост, въпреки че самият Qbs е проектиран да организира компилацията на всякакви проекти. Qbs използва опростена версия на QML за определяне на сценарии за компилация, което позволява създаването на достатъчно гъвкави правила за компилиране, в които могат да се включват външни модули, да се използват функции на JavaScript и да се създават произволни правила за компилация.

Използваният в Qbs език за сценарии е адаптиран за автоматизация на генерирането и анализа на сценарии за компилация в интегрирани среди за разработка. Освен това, Qbs не генерира make-файлове, а сам, без посредници, като утилитата make, контролира стартиранията на компилатори и линковчици, оптимизирайки процеса на компилация на базата на подробен граф на всички зависимости. Наличието на първоначални данни за структурата и зависимостите в проекта позволява ефективно паралелно изпълнение на операции в множество потоци. За големи проекти, състоящи се от много файлове и подпапки, производителността на повторна компилация с Qbs може значително да превъзхожда make — повторната компилация се извършва почти мигновено и не накара разработчика да губи време в чакане.

Напомняме, че през 2018 година компанията Qt Company взе решение да прекрати разработката на Qbs. Qbs се развиваше като замяна на qmake, но в крайна сметка беше решено да се използва CMake като основна система за компилация за Qt в дългосрочен план. Разработката на Qbs сега продължава под формата на независим проект, поддържан от общността и заинтересовани разработчици. Инфраструктурата на Qt Company все още се използва за разработката.

Основни нововъведения в Qbs 1.20:

  • Изпълнена е пълна поддръжка на фреймуърка Qt 6, включително версия Qt 6.2.
  • Обновен и портирован на C++17 модул QtScript, който вече не се предлага с Qt 6 и сега е част от Qbs.
  • При компилация с различен набор от свойства, се осигурява извеждане на списък с остарели свойства.
  • В qbs-config е добавена команда за добавяне на целия профил, което позволява да се мине без отделно добавяне на свойства и значително ускорява стартирането при наличие на няколко Android SDK.
  • Проблемът с неправилната обработка на времето за обновление на файловете в платформата FreeBSD е разрешен.
  • Подобрена е поддръжката на C/C++. Добавена е поддръжка на компилатори COSMIC (COLDFIRE/M68K, HCS08, HCS12, STM8 и STM32) и инструменти на Digital Mars. За компилатора MSVC е реализирано свойството cpp.enableCxxLanguageMacro и е добавена поддръжка на стойността «c++20» в cpp.cxxLanguageVersion.
  • За платформата Android е реализирана поддръжка за използване на dex компилатора d8 вместо dx чрез задаване на свойството Android.sdk.dexCompilerName. Поддръжката на Ministro, програмата за осигуряване на работата на Qt библиотеките в системата Android, е прекратена. Инструментарият за създаване на пакети е обновен от aapt до aapt2 (Android Asset Packaging Tool).

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster