Pagpagawas sa Qbs 1.21 build tools ug pagsugod sa Qt 6.3 testing

Gipahibalo ang Qbs 1.21 build tools release. Kini ang ikawalong pagpagawas sukad ang Qt Company mibiya sa pagpalambo sa proyekto, nga giandam sa komunidad nga interesado sa pagpadayon sa pagpalambo sa Qbs. Aron matukod ang Qbs, gikinahanglan ang Qt taliwala sa mga dependency, bisan kung ang Qbs mismo gidisenyo aron maorganisar ang asembliya sa bisan unsang mga proyekto. Gigamit sa Qbs ang usa ka pinasimple nga bersyon sa QML nga lengguwahe aron mahibal-an ang mga script sa pagtukod sa proyekto, nga nagtugot kanimo sa paghubit sa patas nga flexible nga mga lagda sa pagtukod nga makakonekta sa mga eksternal nga module, magamit ang mga function sa JavaScript, ug maghimo mga kostumbre sa pagtukod.

Ang lengguwahe sa scripting nga gigamit sa Qbs gipahiangay aron awtomatiko ang paghimo ug pag-parse sa mga script sa paghimo sa mga IDE. Dugang pa, ang Qbs wala magmugna og mga makefile, ug sa iyang kaugalingon, nga walay mga tigpataliwala sama sa make utility, nagkontrolar sa paglunsad sa mga compiler ug mga linker, nga nag-optimize sa proseso sa pagtukod base sa usa ka detalyado nga graph sa tanang dependency. Ang presensya sa inisyal nga datos sa istruktura ug mga dependency sa proyekto nagtugot kanimo sa epektibong pagpahiuyon sa pagpatuman sa mga operasyon sa daghang mga hilo. Alang sa dagkong mga proyekto nga gilangkuban sa daghang mga file ug mga subdirektoryo, ang paghimo pag-usab nga pasundayag gamit ang Qbs mahimong makalabaw sa paghimo sa daghang mga higayon - ang pagtukod pag-usab hapit dayon ug dili maghimo sa developer nga mogugol ug oras sa paghulat.

Hinumdomi nga sa 2018, ang Qt Company nakahukom sa paghunong sa pagpalambo sa Qbs. Ang Qbs naugmad isip kapuli sa qmake, apan sa katapusan nakahukom nga gamiton ang CMake isip nag-unang sistema sa pagtukod alang sa Qt sa kadugayan. Ang pagpalambo sa Qbs nagpadayon karon isip usa ka independenteng proyekto nga gisuportahan sa mga pwersa sa komunidad ug mga interesadong developers. Ang imprastraktura sa Qt Company padayon nga gigamit alang sa kalamboan.

Pangunang mga inobasyon sa Qbs 1.21:

  • Ang mekanismo sa module providers (module generators) gidesinyo pag-usab. Para sa mga frameworks sama sa Qt ug Boost, posible na karon nga mogamit ug labaw sa usa ka provider, ipiho kung asa nga provider ang daganan gamit ang bag-ong qbsModuleProviders property, ug ipiho ang usa ka priority sa pagpili sa modules nga gihimo sa lain-laing providers. Pananglitan, mahimo nimong ipiho ang duha ka mga provider nga "Qt" ug "qbspkgconfig", ang una niini mosulay sa paggamit sa instalasyon sa Qt sa user (pinaagi sa pagpangita sa qmake), ug kung walay makita nga pag-instalar, ang ikaduha nga provider mosulay sa paggamit ang Qt nga gihatag sa sistema (pinaagi sa usa ka tawag sa pkg-config): CppApplication {Depends {ngalan: "Qt.core"} files: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • Gidugang ang "qbspkgconfig" provider, nga mipuli sa "fallback" module provider, nga misulay sa pagmugna og module gamit ang pkg-config kung ang gihangyo nga module wala gihimo sa ubang providers. Dili sama sa "fallback", "qbspkgconfig" imbes nga tawagan ang pkg-config utility naggamit sa usa ka built-in nga C++ library aron direkta nga mabasa ang ".pc" nga mga file, nga makapadali sa trabaho ug naghatag dugang nga kasayuran bahin sa mga dependency sa package nga dili magamit kung tawagan ang pkg-config utility.
  • Gidugang nga suporta alang sa C++ 23 nga espesipikasyon, nga naghubit sa umaabot nga C++ nga sumbanan.
  • Gidugang nga suporta alang sa Elbrus E2K nga arkitektura para sa GCC toolkit.
  • Para sa Android platform, ang Android.ndk.buildId property gidugang aron ma-override ang default value para sa "--build-id" linker flag.
  • Ang capnproto ug protobuf modules nagpatuman sa abilidad sa paggamit sa mga runtime nga gihatag sa qbspkgconfig provider.
  • Nasulbad nga mga isyu sa pagbag-o sa pagsubay sa mga tinubdan nga mga file sa FreeBSD tungod sa mga millisecond nga gihulog kung gibanabana ang mga oras sa pagbag-o sa file.
  • Gidugang ang ConanfileProbe.verbose property aron mas sayon ​​ang pag-debug sa mga proyekto nga naggamit sa Conan package manager.

Dugang pa, mamatikdan nato ang sinugdanan sa alpha testing sa Qt 6.3 framework, nga nagpatuman sa bag-ong module nga "Qt Language Server" nga adunay suporta alang sa Language Server ug JsonRpc 2.0 protocols, usa ka dako nga bahin sa bag-ong mga function ang gidugang sa Qt Core. module, ug ang QML type MessageDialog gipatuman na sa Qt Quick Dialogs module Aron magamit ang mga dialog box nga gihatag sa plataporma, usa ka composite Qt Shell server ug usa ka API alang sa pagmugna sa imong kaugalingong custom shell extension ang gidugang sa Qt Wayland Compositor module .

Ang Qt QML module nagtanyag ug pagpatuman sa qmltc (QML type compiler) compiler, nga nagtugot kanimo sa pag-compile sa QML object structures ngadto sa mga klase sa C++. Alang sa mga komersyal nga tiggamit sa Qt 6.3, ang pagsulay sa produkto sa Qt Quick Compiler nagsugod na, nga, dugang sa gihisgutan sa ibabaw nga QML Type Compiler, naglakip sa QML Script Compiler, nga nagtugot kanimo sa pag-compile sa mga function sa QML ug mga ekspresyon sa C++ code. Namatikdan nga ang paggamit sa Qt Quick Compiler magdala sa paghimo sa mga programa nga nakabase sa QML nga mas duol sa lumad nga mga programa; ilabi na, sa pag-compile sa mga extension, adunay pagkunhod sa oras sa pagsugod ug pagpatuman sa gibana-bana nga 30% kumpara sa paggamit sa gihubad nga bersyon .

Source: opennet.ru

Idugang sa usa ka comment