Kogumise tööriista Qbs 1.21 väljaanne ja Qt 6.3 testimise algus.

Esitletud on Qbs 1.21 koostamisvahendi väljaanne. See on kaheksas väljaanne alates Qt Company lahkumisest projekti arendamisest, mille on valmistanud väljaandeid sooviv kogukond. Qbs-i koostamiseks vajate Qt sõltuvusi, kuigi Qbs on mõeldud igasuguste projektide koostamise korraldamiseks. Qbs kasutab lihtsustatud QML keelt projekti koostamisstsenaariumide määratlemiseks, mis võimaldab määrata piisavalt paindlikke koostamisreegleid, kus saab ühenduda väliste moodulitega, kasutada JavaScripti funktsioone ja luua omapäraseid koostamisreegleid.

Qbs-is kasutatav skriptikeel on kohandatud integreeritud arenduskeskkondade kokkupaneku stsenaariumite automatiseerimise genereerimiseks ja tõlgendamiseks. Lisaks ei genereeri Qbs make-failide, vaid kontrollib iseseisvalt, ilma vahendajateta, nagu make utiliit, kompilatsioonide ja linkimiste käivitamist, optimeerides kokkupaneku protsessi kõigi sõltuvuste üksikasjaliku graafi põhjal. Algandmete olemasolu projekti struktuuri ja sõltuvuste kohta võimaldab tõhusalt operatsioone mitme lõime vahel paralleelselt läbi viia. Suurte projektide korral, mis koosnevad paljusid faile ja alamkaustadest, võib Qbs-i korduv kokkupanek osutuda mitu korda efektiivsemaks kui make – kokkupanek toimub peaaegu koheselt ja ei pane arendajat ootama.

Kohal meenutame, et 2018. aastal otsustas Qt Company Qbs-i arendamise lõpetada. Qbs arenes välja qmake asendajana, kuid lõpuks otsustati, et pikkade perspektiivide jaoks kasutatakse Qt põhikogumissüsteemina CMake'i. Qbs-i arendamine jätkub nüüd sõltumatu projektina, mida toetavad kogukonna jõud ja huvitatud arendajad. Arendamisel kasutatakse endiselt Qt Company infrastruktuuri.

Qbs 1.21 peamised uuendused:

  • Mooduli (mooduligeneraatorite) pakkujate mehhanismi on ümber töötatud. Raamistike nagu Qt ja Boost jaoks on nüüd võimalik kasutada rohkem kui ühte pakkujat, määrata, millist pakkujat käivitada uue atribuudiga qbsModuleProviders, ja seada prioriteet erinevates moodulite genereerimist pakkujate valimiseks. Näiteks saate määrata kaks pakkujat «Qt» ja «qbspkgconfig», kus esimene proovib kasutada kasutaja Qt installatsiooni (qmake'i kaudu otsimise teel) ja kui sellist installi ei leita, proovib teine pakkuja kaasata süsteemi pakutud Qt-d (pkg-config'i kutse kaudu): CppApplication { Depends { name: «Qt.core» } files: «main.cpp» qbsModuleProviders: [«Qt», «qbspkgconfig»] }
  • Lisatud on pakkuja «qbspkgconfig», mis on asendanud mooduli pakkuja «fallback», mis püüdis genereerida moodulit pkg-config-i abil, kui soovitud moodulit ei genereeritud teiste pakkujatega. Erinevalt «fallback-ist» kasutab «qbspkgconfig» pkg-config tööriista kutse asemel sisseehitatud C++ teeki «.pc» failide otse lugemiseks, mis kiirendab tööprotsessi ja võimaldab saada lisainfot pakettide sõltuvuste kohta, mis pole saadaval pkg-config-i kutse käigus.
  • Lisatud on C++23 spetsifikatsiooni tugi, mis määratleb tuleviku C++ standardi.
  • GCC tööriistadele on lisatud Elbrus E2K arhitektuuri tugi.
  • Androidi platvormile on lisatud omadus Android.ndk.buildId, mis võimaldab üle kirjutada vaikeväärtuse lingitöötlija flägi «—build-id».
  • capnproto ja protobuf moodulites on rakendatud võimalus kasutada qbspkgconfig pakkuja poolt pakutud runtime'i.
  • Lahendatud probleemid koodifailide muudatuste jälgimisega FreeBSD platvormil, mis tekkisid failide muudatuste ajamõõtmise käigus millisekundite arvesse mittevõtmise tõttu.
  • Lisatud omadus ConanfileProbe.verbose, mis lihtsustab Conan paketihalduri kasutavaid projektide tõrkeotsingut.

Oluline on märkida ka Qt 6.3 raamistikku alfatesti algust, kuhu on lisatud uus moodul «Qt Language Server», mis toetab Language Server ja JsonRpc 2.0 protokolle. Qt Core moodulisse on lisatud hulk uusi funktsioone, Qt Quick Dialogs moodulis on rakendatud QML tüüpi MessageDialog, et kasutada platvormi pakutavaid dialooge, ning Qt Wayland Compositor moodulisse on lisatud komposiit. server Qt Shell ja API oma kasutajaliidese laiendite loomiseks.

Qt QML moodulis on pakutud qmltc (QML tüübi kompilaator) rakendust, mis võimaldab QML objektistruktuurid C++ klassideks kompileerida. Kaubanduslikud Qt 6.3 kasutajad on alustanud Qt Quick Compileri toote testimist, mis lisaks eelpoolmainitud QML Type Compiler’ile sisaldab QML Script Compiler’it, mis võimaldab QML funktsioonide ja väljendite kompileerimist C++ koodiks. Toodet markeeritakse, et Qt Quick Compileri kasutamine toob QML põhiste programmide jõudluse lähemale natiivsetele programmidele, eelkõige laienduste kompileerimisel täheldatakse käivitamisaja ja täitmise kestuse vähenemist ligikaudu 30% võrreldes tõlgitud variandi kasutamisega.

Allikas: opennet.ru

Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid 🔥 Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid - ProHoster