Qbs 1.21 qurma alətlərinin buraxılması və Qt 6.3 testinin başlanması

Qbs 1.21 qurma alətlərinin buraxılışı elan edildi. Qt Şirkəti Qbs-in inkişafını davam etdirməkdə maraqlı olan icma tərəfindən hazırlanan layihənin işlənməsini tərk etdikdən sonra bu, səkkizinci buraxılışdır. Qbs qurmaq üçün asılılıqlar arasında Qt tələb olunur, baxmayaraq ki, Qbs özü istənilən layihələrin yığılmasını təşkil etmək üçün nəzərdə tutulub. Qbs, layihə qurma skriptlərini müəyyən etmək üçün QML dilinin sadələşdirilmiş versiyasından istifadə edir ki, bu da sizə xarici modulları birləşdirə, JavaScript funksiyalarından istifadə edə və fərdi qurma qaydaları yarada bilən kifayət qədər çevik qurma qaydalarını müəyyən etməyə imkan verir.

Qbs-də istifadə olunan skript dili IDE-lər tərəfindən qurulma skriptlərinin yaradılması və təhlilini avtomatlaşdırmaq üçün uyğunlaşdırılıb. Bundan əlavə, Qbs makefiles yaratmır və özü make utiliti kimi vasitəçilər olmadan kompilyatorların və əlaqələndiricilərin işə salınmasına nəzarət edir, bütün asılılıqların təfərrüatlı qrafiki əsasında qurma prosesini optimallaşdırır. Layihədə struktur və asılılıqlar haqqında ilkin məlumatların olması bir neçə iplikdə əməliyyatların icrasını effektiv şəkildə paralelləşdirməyə imkan verir. Çox sayda fayl və alt kataloqdan ibarət böyük layihələr üçün Qbs-dən istifadə edərək yenidən qurma performansı bir neçə dəfə üstələyə bilər - yenidən qurma demək olar ki, ani olur və tərtibatçının gözləməyə vaxt sərf etməsinə səbəb olmur.

Xatırladaq ki, 2018-ci ildə Qt şirkəti Qbs inkişafını dayandırmaq qərarına gəlib. Qbs qmake üçün əvəz kimi hazırlanmışdır, lakin nəticədə uzunmüddətli perspektivdə Qt üçün əsas qurma sistemi kimi CMake-dən istifadə etmək qərara alındı. Qbs-in inkişafı indi icma qüvvələri və maraqlı tərtibatçılar tərəfindən dəstəklənən müstəqil layihə kimi davam etmişdir. Qt Şirkətinin infrastrukturu inkişaf üçün istifadə olunmağa davam edir.

Qbs 1.21-də əsas yeniliklər:

  • Modul təminatçılarının (modul generatorlarının) mexanizmi yenidən işlənib. Qt və Boost kimi çərçivələr üçün indi birdən çox provayderdən istifadə etmək, yeni qbsModuleProviders xassəsindən istifadə edərək hansı provayderin işə salınacağını müəyyən etmək və müxtəlif provayderlər tərəfindən yaradılan modulların seçilməsi üçün prioritet təyin etmək mümkündür. Məsələn, siz iki provayder "Qt" və "qbspkgconfig" təyin edə bilərsiniz, bunlardan birincisi istifadəçinin Qt quraşdırmasını (qmake axtarışı vasitəsilə) istifadə etməyə çalışacaq və belə bir quraşdırma tapılmasa, ikinci provayder istifadə etməyə çalışacaq. sistem tərəfindən təmin edilən Qt (pkg-config-ə zəng vasitəsilə) : CppApplication { Asılıdır { ad: "Qt.core" } fayllar: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • Tələb olunan modul digər provayderlər tərəfindən yaradılmayıbsa, pkg-config istifadə edərək modul yaratmağa cəhd edən "qaytarılan" modul provayderini əvəz edən "qbspkgconfig" provayderi əlavə edildi. “Reklam”dan fərqli olaraq, “qbspkgconfig” pkg-config yardım proqramına zəng etmək əvəzinə, “.pc” fayllarını birbaşa oxumaq üçün daxili C++ kitabxanasından istifadə edir ki, bu da işi sürətləndirir və paketdən asılılıqlar haqqında əlavə məlumat verir. pkg-config yardım proqramı.
  • Gələcək C++ standartını müəyyən edən C++23 spesifikasiyası üçün əlavə dəstək.
  • GCC alət dəsti üçün Elbrus E2K arxitekturası üçün əlavə dəstək.
  • Android platforması üçün "--build-id" linker bayrağı üçün defolt dəyəri ləğv etmək üçün Android.ndk.buildId xassəsi əlavə edilmişdir.
  • capnproto və protobuf modulları qbspkgconfig provayderi tərəfindən təmin edilən iş vaxtlarından istifadə etmək qabiliyyətini həyata keçirir.
  • Faylın dəyişdirilməsi vaxtlarının təxmin edilməsi zamanı millisaniyələrin atılması səbəbindən FreeBSD-də mənbə fayllarında dəyişikliklərin izlənilməsi ilə bağlı problemlər həll edildi.
  • Conan paket menecerindən istifadə edən layihələri sazlamağı asanlaşdırmaq üçün ConanfileProbe.verbose xassəsini əlavə etdi.

Əlavə olaraq, Dil Serveri və JsonRpc 6.3 protokollarını dəstəkləyən yeni “Qt Language Server” modulunu həyata keçirən Qt 2.0 çərçivəsinin alfa testinin başlanğıcını qeyd edə bilərik, Qt Core-a yeni funksiyaların böyük bir hissəsi əlavə edilmişdir. modulu və QML tipli MessageDialog Qt Sürətli Dialoqlar modulunda tətbiq edilmişdir. Platformanın təqdim etdiyi dialoq qutularından istifadə etmək üçün Qt Wayland Compositor moduluna kompozit Qt Shell serveri və öz fərdi qabıq genişləndirmələrinizi yaratmaq üçün API əlavə edilmişdir. .

Qt QML modulu QML obyekt strukturlarını C++ dilində siniflərə tərtib etməyə imkan verən qmltc (QML tipli kompilyator) kompilyatorunun tətbiqini təklif edir. Qt 6.3-ün kommersiya istifadəçiləri üçün Qt Quick Compiler məhsulunun sınaqdan keçirilməsinə başlanılmışdır ki, bu da yuxarıda qeyd olunan QML Type Compiler-ə əlavə olaraq QML funksiyalarını və ifadələrini C++ kodunda tərtib etməyə imkan verən QML Skript Kompilyatorunu ehtiva edir. Qeyd olunur ki, Qt Quick Compiler-dən istifadə QML əsaslı proqramların işini yerli proqramlara yaxınlaşdıracaq, xüsusən də genişləndirmələrin tərtibi zamanı şərh edilmiş versiyadan istifadə ilə müqayisədə başlanğıc və icra müddətində təxminən 30% azalma müşahidə olunur. .

Mənbə: opennet.ru

Добавить комментарий