Release av Qbs 1.21 byggverktyg och start av Qt 6.3-testning

Version 1.21 av Qbs build tools har slÀppts. Detta Àr den Ättonde utgÄvan sedan Qt Company drog sig ur projektets utveckling. Den förbereddes av communityn som var intresserad av att fortsÀtta Qbs-utvecklingen. Qbs krÀver Qt som ett beroende för att bygga, Àven om Qbs i sig Àr utformat för att hantera byggandet av alla projekt. Qbs anvÀnder en förenklad version av QML-sprÄket för att definiera projektbyggskript, vilket möjliggör definition av ganska flexibla byggregler som kan inkludera externa moduler, anvÀnda JavaScript-funktioner och skapa anpassade byggregler.

SkriptsprÄket som anvÀnds i Qbs Àr anpassat för att automatisera genereringen och analysen av byggskript av IDE:er. Dessutom genererar inte Qbs make-filer och sjÀlv, utan mellanhÀnder som make-verktyget, kontrollerar lanseringen av kompilatorer och lÀnkar, och optimerar byggprocessen baserat pÄ en detaljerad graf över alla beroenden. NÀrvaron av initiala data om strukturen och beroenden i projektet gör att du effektivt kan parallellisera utförandet av operationer i flera trÄdar. För stora projekt som bestÄr av ett stort antal filer och underkataloger kan Äteruppbyggnadsprestandan med Qbs övertrÀffa make med flera gÄnger - ombyggnaden Àr nÀstan omedelbar och gör inte att utvecklaren lÀgger tid pÄ att vÀnta.

Kom ihÄg att 2018 beslutade Qt Company att sluta utveckla Qbs. Qbs utvecklades som en ersÀttning för qmake, men i slutÀndan beslutades det att anvÀnda CMake som huvudbyggsystem för Qt pÄ lÄng sikt. Utvecklingen av Qbs har nu fortsatt som ett oberoende projekt som stöds av samhÀllskrafter och intresserade utvecklare. Qt Companys infrastruktur fortsÀtter att anvÀndas för utveckling.

Viktiga innovationer i Qbs 1.21:

  • Mekanismen för modulleverantörer (modulgeneratorer) har omdesignats. För ramverk som Qt och Boost kan du nu anvĂ€nda mer Ă€n en leverantör, ange vilken leverantör som ska köras med den nya egenskapen qbsModuleProviders och ange en prioritet för att vĂ€lja moduler som genereras av olika leverantörer. Du kan till exempel ange tvĂ„ leverantörer, "Qt" och "qbspkgconfig", varav den första kommer att försöka anvĂ€nda anvĂ€ndarens Qt-installation (via qmake-sökning), och om en sĂ„dan installation inte hittas kommer den andra att försöka anvĂ€nda den systemtillhandahĂ„llna Qt (via pkg-config-anrop): CppApplication { Depends { name: "Qt.core" } files: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • Providern "qbspkgconfig" har lagts till och ersĂ€tter modulprovidern "fallback", som försökte generera en modul med hjĂ€lp av pkg-config om modulen i frĂ„ga inte genererades av andra providers. Till skillnad frĂ„n "fallback" anvĂ€nder "qbspkgconfig" ett inbyggt C++-bibliotek för att direkt lĂ€sa .pc-filer istĂ€llet för att anropa verktyget pkg-config. Detta snabbar upp körningen och ger ytterligare information om paketberoenden som inte Ă€r tillgĂ€nglig nĂ€r man anropar pkg-config.
  • Lade till stöd för C++23-specifikationen, som definierar den framtida C++-standarden.
  • Stöd för Elbrus E2K-arkitekturen har lagts till i GCC-verktygskedjan.
  • För plattformen Android egendom tillagd Android.ndk.buildId, vilket lĂ„ter dig Ă„sidosĂ€tta standardvĂ€rdet för lĂ€nkarflaggan "--build-id".
  • Modulerna capnproto och protobuf stöder nu anvĂ€ndning av körtidsinstĂ€llningar som tillhandahĂ„lls av qbspkgconfig-providern.
  • ÅtgĂ€rdade problem med att spĂ„ra Ă€ndringar i kĂ€llkodsfiler pĂ„ FreeBSD-plattformen pĂ„ grund av att millisekunder utelĂ€mnades vid utvĂ€rdering av filĂ€ndringstider.
  • Lade till egenskapen ConanfileProbe.verbose för att göra det enklare att felsöka projekt som anvĂ€nder Conan-pakethanteraren.

Dessutom kan vi notera starten av alfatestning av Qt 6.3-ramverket, vilket implementerar en ny modul "Qt Language Server" med stöd för Language Server- och JsonRpc 2.0-protokollen, en stor del nya funktioner har lagts till i Qt Core-modulen, QML-typen MessageDialog har implementerats i Qt Quick Dialogs-modulen för att anvÀnda dialogrutor som tillhandahÄlls av plattformen, och en komposit har lagts till i Qt Wayland Compositor-modulen. server Qt Shell och API för att skapa dina egna anpassade skaltillÀgg.

Qt QML-modulen erbjuder en implementering av qmltc (QML-typkompilator), som kompilerar QML-objektstrukturer till C++-klasser. Kommersiella anvÀndare av Qt 6.3 har börjat testa Qt Quick Compiler, som, utöver den tidigare nÀmnda QML Type Compiler, inkluderar QML Script Compiler, som kompilerar QML-funktioner och uttryck till C++-kod. AnvÀndning av Qt Quick Compiler har noterats förbÀttra prestandan för QML-baserade program jÀmfört med native program. Specifikt, vid kompilering av tillÀgg, minskas start- och exekveringstiderna med cirka 30 % jÀmfört med den tolkade versionen.

KĂ€lla: opennet.ru

Köp pĂ„litlig hosting för webbplatser med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster