Liberasyon Qbs 1.21 bati zouti epi kòmanse tès Qt 6.3

Yo te anonse lage zouti konstriksyon Qbs 1.21. Sa a se wityèm lage depi Konpayi Qt la kite devlopman pwojè a, kominote a ki enterese kontinye devlopman Qbs. Pou konstwi Qbs, Qt obligatwa nan mitan depandans yo, byenke Qbs tèt li fèt pou òganize asanble nenpòt pwojè. Qbs sèvi ak yon vèsyon senplifye nan lang QML pou defini script bati pwojè, ki pèmèt ou defini règ konstriksyon san patipri fleksib ki ka konekte modil ekstèn, sèvi ak fonksyon JavaScript, ak kreye règ bati koutim.

Langaj scripting yo itilize nan Qbs adapte pou otomatize jenerasyon ak analiz script bati pa IDE yo. Anplis de sa, Qbs pa jenere makefile, ak tèt li, san entèmedyè tankou sèvis piblik make la, kontwole lansman konpilateur ak linkers, optimize pwosesis la bati ki baze sou yon graf detaye nan tout depandans. Prezans nan premye done sou estrikti a ak depandans nan pwojè a pèmèt ou efektivman paralelize ekzekisyon an nan operasyon nan plizyè fil. Pou gwo pwojè ki gen yon gwo kantite fichye ak sous-répertoires, pèfòmans nan rekonstwi itilize Qbs ka depase fè plizyè fwa - rebati a se prèske enstantane epi yo pa fè pwomotè a pase tan ap tann.

Sonje byen, nan 2018, Qt Konpayi an te deside sispann devlope Qbs. Qbs te devlope kòm yon ranplasman pou qmake, men finalman li te deside sèvi ak CMake kòm sistèm nan bati prensipal pou Qt nan kouri nan longè. Devlopman Qbs kounye a kontinye kòm yon pwojè endepandan sipòte pa fòs kominotè ak devlopè ki enterese. Enfrastrikti konpayi Qt kontinye ap itilize pou devlopman.

Inovasyon kle nan Qbs 1.21:

  • Mekanis founisè modil yo (dèlko modil) te reamenaje. Pou kad tankou Qt ak Boost, kounye a li posib pou itilize plis pase yon founisè, presize ki founisè pou kouri lè l sèvi avèk nouvo pwopriyete qbsModuleProviders la, epi presize yon priyorite pou chwazi modil diferan founisè yo pwodwi. Pou egzanp, ou ka presize de founisè "Qt" ak "qbspkgconfig", premye nan yo ki pral eseye sèvi ak enstalasyon itilizatè a nan Qt (atravè yon rechèch qmake), epi si pa gen okenn enstalasyon sa yo jwenn, dezyèm founisè a pral eseye. sèvi ak Qt sistèm lan bay (atravè yon apèl nan pkg-config): CppApplication { Depann { non: "Qt.core" } fichye: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • Te ajoute founisè "qbspkgconfig", ki te ranplase founisè modil "replis", ki te eseye jenere yon modil lè l sèvi avèk pkg-config si lòt founisè pa te pwodwi modil yo mande a. Kontrèman ak "fallback", "qbspkgconfig" olye pou yo rele sèvis piblik pkg-config la sèvi ak yon bibliyotèk C++ entegre pou li dirèkteman fichye ".pc", ki pèmèt travay akselere ak jwenn plis enfòmasyon sou depandans pake ki pa disponib lè w ap rele. sèvis piblik pkg-config la.
  • Te ajoute sipò pou spesifikasyon C++23, ki defini estanda C++ nan lavni.
  • Te ajoute sipò pou achitekti Elbrus E2K pou bwat zouti GCC la.
  • Pou platfòm Android a, yo te ajoute pwopriyete Android.ndk.buildId pou pase valè default pou drapo linker "--build-id" la.
  • Modil capnproto ak protobuf yo aplike kapasite pou yo itilize ègzekutabl founisè qbspkgconfig la bay.
  • Rezoud pwoblèm ak swiv chanjman nan dosye sous sou FreeBSD akòz milisgond yo te tonbe lè yo estime tan modifikasyon fichye yo.
  • Te ajoute pwopriyete ConanfileProbe.verbose pou fè li pi fasil pou debogaj pwojè ki itilize manadjè pake Conan.

Anplis de sa, nou ka sonje kòmansman tès alfa nan kad Qt 6.3, ki aplike yon nouvo modil "Qt Language Server" ak sipò pou lang sèvè a ak JsonRpc 2.0 pwotokòl, yon gwo pati nan nouvo fonksyon yo te ajoute nan Qt Core a. modil QML, epi MessageDialog kalite QML yo te aplike nan modil Qt Quick Dialogs Pou itilize bwat dyalòg platfòm la bay yo, yo te ajoute yon sèvè Qt Shell konpoze ak yon API pou kreye pwòp ekstansyon kokiy koutim ou yo nan modil Qt Wayland Compositor. .

Qt QML modil la ofri yon aplikasyon qmltc (QML tip du), ki pèmèt ou konpile estrikti objè QML nan klas nan C++. Pou itilizatè komèsyal nan Qt 6.3, tès Qt Quick Compiler pwodwi a te kòmanse, ki, anplis de QML Kalite Compiler ki mansyone anwo a, gen ladan QML Script Compiler, ki pèmèt ou konpile fonksyon QML ak ekspresyon nan kòd C++. Li te note ke itilizasyon Qt Quick Compiler pral pote pèfòmans nan pwogram ki baze sou QML pi pre pwogram natif natal yo an patikilye, lè konpile ekstansyon, gen yon rediksyon nan tan demaraj ak ekzekisyon pa apeprè 30% konpare ak lè l sèvi avèk vèsyon an entèprete; .

Sous: opennet.ru

Add nouvo kòmantè