Qbs 1.21 құрастыру құралдарын шығару және Qt 6.3 тестілеуді бастау

Qbs 1.21 құрастыру құралдарының шығарылымы жарияланды. Бұл Qt компаниясы Qbs әзірлеуді жалғастыруға мүдделі қауымдастық дайындаған жобаны әзірлеуден кеткеннен бергі сегізінші шығарылым. Qbs құру үшін тәуелділіктер арасында Qt қажет, дегенмен Qbs өзі кез келген жобаларды құрастыруды ұйымдастыруға арналған. Qbs жобаны құрастыру сценарийлерін анықтау үшін QML тілінің жеңілдетілген нұсқасын пайдаланады, ол сыртқы модульдерді қоса алатын, JavaScript функцияларын пайдалана алатын және реттелетін құрастыру ережелерін жасай алатын жеткілікті икемді құрастыру ережелерін анықтауға мүмкіндік береді.

Qbs-те қолданылатын сценарий тілі IDE арқылы құрастыру сценарийлерін генерациялауды және талдауды автоматтандыруға бейімделген. Сонымен қатар, Qbs makefiles жасамайды және өзі make утилитасы сияқты делдалсыз компиляторлар мен сілтемелердің іске қосылуын басқарады, барлық тәуелділіктердің егжей-тегжейлі графигі негізінде құрастыру процесін оңтайландырады. Жобадағы құрылым мен тәуелділіктер туралы бастапқы деректердің болуы бірнеше ағындардағы операциялардың орындалуын тиімді параллельдеуге мүмкіндік береді. Файлдар мен ішкі каталогтардың үлкен санынан тұратын ірі жобалар үшін Qbs көмегімен қайта құру өнімділігі жасаудан бірнеше есе асып түсуі мүмкін - қайта құру бірден дерлік болады және әзірлеушіні күтуге уақыт жұмсамайды.

Еске салайық, 2018 жылы Qt компаниясы Qbs әзірлеуді тоқтату туралы шешім қабылдады. Qbs qmake-ді ауыстыру ретінде әзірленді, бірақ сайып келгенде, CMake-ді Qt үшін негізгі құрастыру жүйесі ретінде ұзақ мерзімді перспективада пайдалану туралы шешім қабылданды. Qbs әзірлеу қазір қауымдастық күштері мен мүдделі әзірлеушілер қолдайтын тәуелсіз жоба ретінде жалғасты. Qt компаниясының инфрақұрылымы даму үшін пайдалануды жалғастыруда.

Qbs 1.21 негізгі инновациялары:

  • Модуль жеткізушілерінің механизмі (модуль генераторлары) қайта құрастырылды. Qt және Boost сияқты фреймворктер үшін енді бірден көп провайдерді пайдалануға, жаңа qbsModuleProviders сипатын пайдаланып қай провайдерді іске қосу керектігін көрсетуге және әртүрлі провайдерлер жасаған модульдерді таңдау үшін басымдықты көрсетуге болады. Мысалы, «Qt» және «qbspkgconfig» екі провайдерін көрсетуге болады, олардың біріншісі пайдаланушының Qt орнатуын (qmake іздеу арқылы) пайдалануға тырысады, ал егер мұндай орнату табылмаса, екінші провайдер пайдалануға тырысады. жүйемен қамтамасыз етілген Qt (pkg-config қызметіне қоңырау шалу арқылы): CppApplication { Тәуелді {аты: "Qt.core" } файлдар: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • Сұралған модульді басқа провайдерлер жасамаған жағдайда, pkg-config көмегімен модуль жасауға әрекеттенген «қайта» модуль провайдерін ауыстырған «qbspkgconfig» провайдері қосылды. «Қалпына келтіруден» айырмашылығы, «qbspkgconfig» pkg-config утилитасына қоңырау шалудың орнына «.pc» файлдарын тікелей оқу үшін кірістірілген C++ кітапханасын пайдаланады, бұл жұмысты тездетеді және қоңырау шалу кезінде қолжетімді емес пакеттік тәуелділіктер туралы қосымша ақпарат береді. pkg-config утилитасы.
  • Болашақ C++ стандартын анықтайтын C++23 спецификациясына қолдау қосылды.
  • GCC құралдар жинағы үшін Elbrus E2K архитектурасына қолдау қосылды.
  • Android платформасы үшін "--build-id" сілтеме жалаушасының әдепкі мәнін қайта анықтау үшін Android.ndk.buildId сипаты қосылды.
  • capnproto және protobuf модульдері qbspkgconfig провайдері қамтамасыз ететін орындалу уақыттарын пайдалану мүмкіндігін жүзеге асырады.
  • Файлды өзгерту уақытын бағалау кезінде миллисекундтардың жойылуына байланысты FreeBSD жүйесіндегі бастапқы файлдардағы өзгерістерді қадағалау мәселелері шешілді.
  • Conan бума реттеушісін пайдаланатын жобаларды жөндеуді жеңілдету үшін ConanfileProbe.verbose сипаты қосылды.

Сонымен қатар, Qt 6.3 фреймворкінің альфа тестілеуінің басталуын атап өтуге болады, ол Language Server және JsonRpc 2.0 протоколдарын қолдауымен «Qt Language Server» жаңа модулін жүзеге асырады, Qt Core жүйесіне жаңа функциялардың үлкен бөлігі қосылды. модулі және Qt Quick Dialogs модулінде QML типті MessageDialog енгізілді. Платформа ұсынатын диалогтық терезелерді пайдалану үшін Qt Wayland Compositor модуліне жеке реттелетін қабық кеңейтімдерін жасауға арналған Qt Shell композиттік сервері және API қосылды. .

Qt QML модулі qmltc (QML типті компилятор) компиляторының іске асырылуын ұсынады, ол QML нысан құрылымдарын C++ тілінде сыныптарға жинақтауға мүмкіндік береді. Qt 6.3 коммерциялық пайдаланушылары үшін Qt Quick Compiler өнімін тестілеу басталды, ол жоғарыда аталған QML Type Compiler бағдарламасына қосымша QML Script Compiler бағдарламасын қамтиды, ол QML функциялары мен өрнектерді C++ кодына құрастыруға мүмкіндік береді. Qt Quick Compiler қолдану QML негізіндегі бағдарламалардың өнімділігін жергілікті бағдарламаларға жақындататыны атап өтілген; атап айтқанда, кеңейтімдерді құрастыру кезінде интерпретацияланған нұсқаны пайдаланумен салыстырғанда іске қосу және орындау уақытының шамамен 30%-ға қысқаруы байқалады. .

Ақпарат көзі: opennet.ru

пікір қалдыру