Qbs 1.21 eraikitzeko tresnen kaleratzea eta Qt 6.3 probaren hasiera

Qbs 1.21 eraikitzeko tresnen bertsioa iragarri da. Qt konpainiak proiektuaren garapena utzi zuenetik zortzigarren bertsioa da, Qbs garatzen jarraitzeko interesa duen komunitateak prestatutakoa. Qbs eraikitzeko, Qt behar da menpekotasunen artean, nahiz eta Qbs bera edozein proiekturen muntaia antolatzeko diseinatuta dagoen. Qbs-ek QML lengoaiaren bertsio sinplifikatu bat erabiltzen du proiektuak eraikitzeko script-ak definitzeko, eta horrek kanpoko moduluak konektatu, JavaScript funtzioak erabili eta eraikitze-arau pertsonalizatuak sor ditzaketen eraikuntza-arau nahiko malguak defini ditzakezu.

Qbs-en erabiltzen den script-lengoaia garapen-ingurune integratuek eraikitze-scripten sorrera eta analisia automatizatzeko egokituta dago. Horrez gain, Qbs-ek ez du makefilerik sortzen, baina berak, make utility bezalako bitartekaririk gabe, konpilatzaileen eta estekatzaileen abiaraztearen kontrola kontrolatzen du, eraikitze-prozesua optimizatuz mendekotasun guztien grafiko zehatz batean oinarrituta. Proiektuan egiturari eta mendekotasunei buruzko hasierako datuak egoteak hainbat haritako eragiketen exekuzioa modu eraginkorrean paralelizatzeko aukera ematen du. Fitxategi eta azpidirektorio ugariz osatutako proiektu handietarako, Qbs erabiliz berreraikitzearen errendimendua make baino hainbat aldiz azkarragoa izan daiteke - berreraikitzea ia berehala egiten da eta ez du garatzailea behartzen itxaron denbora galtzera.

Gogora dezagun 2018an Qt konpainiak Qbs garatzeari uztea erabaki zuela. Qbs qmake-ren ordezko gisa garatu zen, baina azkenean CMake Qt-ren eraikuntza-sistema nagusi gisa erabiltzea erabaki zen epe luzera. Qbs-en garapenak komunitateak eta interesa duten garatzaileek lagundutako proiektu independente gisa jarraitu du. Qt Company azpiegiturak garapenerako erabiltzen jarraitzen du.

Qbs 1.21-en funtsezko berrikuntzak:

  • Modulu hornitzaileen mekanismoa (modulu-sorgailuak) birdiseinatu da. Qt eta Boost bezalako esparruetarako, orain hornitzaile bat baino gehiago erabil daiteke, zehaztu zein hornitzaile exekutatu behar den qbsModuleProviders propietate berria erabiliz eta lehentasun bat zehaztu hornitzaile ezberdinek sortutako moduluak hautatzeko. Adibidez, "Qt" eta "qbspkgconfig" bi hornitzaile zehaztu ditzakezu, lehenengoa erabiltzailearen Qt instalazioa erabiltzen saiatuko da (qmake bilaketa baten bidez), eta instalazio hori aurkitzen ez bada, bigarren hornitzailea erabiltzen saiatuko da. sistemak eskaintzen duen Qt (pkg-config dei baten bidez): CppApplication { Depends { name: "Qt.core" } files: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • "qbspkgconfig" hornitzailea gehitu da, "fallback" modulu hornitzailea ordezkatu duena, pkg-config erabiliz modulu bat sortzen saiatzen dena, eskatutako modulua beste hornitzaile batzuek sortu ez badute. "Erreserba" ez bezala, "qbspkgconfig" pkg-config utilitateari deitu beharrean C++ liburutegi integratua erabiltzen du ".pc" fitxategiak zuzenean irakurtzeko, eta horrek lana bizkortu eta deitzerakoan eskuragarri ez dagoen paketeen mendekotasunei buruzko informazio gehigarria lortzen du. pkg-config utilitatea.
  • C++23 espezifikaziorako euskarria gehitu da, etorkizuneko C++ estandarra definitzen duena.
  • GCC tresna-tresnerako Elbrus E2K arkitekturarako euskarria gehitu da.
  • Android plataformarako, Android.ndk.buildId propietatea gehitu da "--build-id" estekatzailearen banderaren balio lehenetsia gainidazteko.
  • capnproto eta protobuf moduluek qbspkgconfig hornitzaileak emandako exekuzio-denborak erabiltzeko gaitasuna ezartzen dute.
  • FreeBSD-ko iturburu-fitxategietan aldaketen jarraipenarekin lotutako arazoak konpondu dira, fitxategiak aldatzeko denborak kalkulatzean milisegundoak jaisten direlako.
  • ConanfileProbe.verbose propietatea gehitu da Conan pakete-kudeatzailea erabiltzen duten proiektuak arazketa errazteko.

Gainera, Qt 6.3 markoaren alfa-probaren hasiera nabarmendu dezakegu, "Qt Language Server" modulu berri bat inplementatzen duena Language Server eta JsonRpc 2.0 protokoloetarako laguntzarekin, funtzio berrien zati handi bat Qt Core-ra gehitu da. modulua, eta QML motako MessageDialog Qt Quick Dialogs moduluan inplementatu da Plataformak eskaintzen dituen elkarrizketa-koadroak erabiltzeko, Qt Shell zerbitzari konposatu bat eta zure shell luzapen pertsonalizatuak sortzeko API bat gehitu dira Qt Wayland Compositor moduluan .

Qt QML moduluak qmltc (QML motako konpilatzailea) konpiladorearen inplementazioa eskaintzen du, eta horrek QML objektuen egiturak C++-ko klaseetan konpilatzeko aukera ematen du. Qt 6.3-ren erabiltzaile komertzialentzat, Qt Quick Compiler produktuaren probak hasi dira, eta bertan, goian aipatutako QML Type Compiler-az gain, QML Script Compiler-a barne hartzen du, QML funtzioak eta adierazpenak C++ kodean konpilatzeko aukera ematen duena. Kontuan izan da Qt Quick Compiler-en erabilerak QMLn oinarritutako programen errendimendua jatorrizko programetara hurbilduko duela; bereziki, luzapenak konpilatzean, abiarazteko eta exekutatzeko denbora gutxi gorabehera % 30 murrizten da interpretatutako bertsioa erabiltzearekin alderatuta. .

Iturria: opennet.ru

Gehitu iruzkin berria