Qbs 1.21 బిల్డ్ టూల్స్ విడుదల మరియు Qt 6.3 టెస్టింగ్ ప్రారంభం

Qbs 1.21 బిల్డ్ టూల్స్ విడుదల ప్రకటించబడింది. Qt కంపెనీ ప్రాజెక్ట్ అభివృద్ధిని విడిచిపెట్టిన తర్వాత ఇది ఎనిమిదవ విడుదల, Qbs అభివృద్ధిని కొనసాగించడానికి ఆసక్తి ఉన్న సంఘం సిద్ధం చేసింది. Qbsని నిర్మించడానికి, Qbs అనేది ఏదైనా ప్రాజెక్ట్‌ల అసెంబ్లీని నిర్వహించడానికి రూపొందించబడినప్పటికీ, డిపెండెన్సీలలో Qt అవసరం. Qbs ప్రాజెక్ట్ బిల్డ్ స్క్రిప్ట్‌లను నిర్వచించడానికి QML భాష యొక్క సరళీకృత సంస్కరణను ఉపయోగిస్తుంది, ఇది బాహ్య మాడ్యూల్‌లను కనెక్ట్ చేయగల, JavaScript ఫంక్షన్‌లను ఉపయోగించగల మరియు అనుకూల నిర్మాణ నియమాలను రూపొందించగల చాలా సరళమైన నిర్మాణ నియమాలను నిర్వచించడానికి మిమ్మల్ని అనుమతిస్తుంది.

Qbsలో ఉపయోగించిన స్క్రిప్టింగ్ భాష సమగ్ర అభివృద్ధి వాతావరణాల ద్వారా బిల్డ్ స్క్రిప్ట్‌ల ఉత్పత్తి మరియు అన్వయీకరణను ఆటోమేట్ చేయడానికి స్వీకరించబడింది. అదనంగా, Qbs మేక్‌ఫైల్‌లను రూపొందించదు, కానీ స్వయంగా, మేక్ యుటిలిటీ వంటి మధ్యవర్తులు లేకుండా, కంపైలర్‌లు మరియు లింకర్‌ల ప్రారంభాన్ని నియంత్రిస్తుంది, అన్ని డిపెండెన్సీల వివరణాత్మక గ్రాఫ్ ఆధారంగా నిర్మాణ ప్రక్రియను ఆప్టిమైజ్ చేస్తుంది. ప్రాజెక్ట్‌లోని నిర్మాణం మరియు డిపెండెన్సీల గురించి ప్రారంభ డేటా ఉనికిని మీరు అనేక థ్రెడ్‌లలో కార్యకలాపాల అమలును సమర్థవంతంగా సమాంతరంగా చేయడానికి అనుమతిస్తుంది. పెద్ద సంఖ్యలో ఫైల్‌లు మరియు సబ్‌డైరెక్టరీలను కలిగి ఉన్న పెద్ద ప్రాజెక్ట్‌ల కోసం, Qbsని ఉపయోగించి పునర్నిర్మాణం యొక్క పనితీరు మేక్ కంటే చాలా రెట్లు వేగంగా ఉంటుంది - పునర్నిర్మాణం దాదాపు తక్షణమే నిర్వహించబడుతుంది మరియు డెవలపర్ వేచి ఉండే సమయాన్ని వృథా చేయమని బలవంతం చేయదు.

2018లో Qt కంపెనీ Qbs అభివృద్ధిని నిలిపివేయాలని నిర్ణయించుకున్న విషయాన్ని గుర్తుచేసుకుందాం. Qbs అనేది qmakeకి ప్రత్యామ్నాయంగా అభివృద్ధి చేయబడింది, అయితే దీర్ఘకాలంలో Qt కోసం CMakeని ప్రధాన నిర్మాణ వ్యవస్థగా ఉపయోగించాలని నిర్ణయించారు. Qbs అభివృద్ధి ఇప్పుడు కమ్యూనిటీ మరియు ఆసక్తిగల డెవలపర్‌ల మద్దతుతో స్వతంత్ర ప్రాజెక్ట్‌గా కొనసాగుతోంది. Qt కంపెనీ అవస్థాపన అభివృద్ధి కోసం ఉపయోగించబడుతోంది.

Qbs 1.21లో కీలక ఆవిష్కరణలు:

  • మాడ్యూల్ ప్రొవైడర్ల (మాడ్యూల్ జనరేటర్లు) మెకానిజం పునఃరూపకల్పన చేయబడింది. Qt మరియు Boost వంటి ఫ్రేమ్‌వర్క్‌ల కోసం, ఇప్పుడు ఒకటి కంటే ఎక్కువ ప్రొవైడర్‌లను ఉపయోగించడం సాధ్యమవుతుంది, కొత్త qbsModuleProviders ప్రాపర్టీని ఉపయోగించి ఏ ప్రొవైడర్‌ను అమలు చేయాలో పేర్కొనండి మరియు వివిధ ప్రొవైడర్లు రూపొందించిన మాడ్యూల్‌లను ఎంచుకోవడానికి ప్రాధాన్యతను పేర్కొనండి. ఉదాహరణకు, మీరు "Qt" మరియు "qbspkgconfig" అనే రెండు ప్రొవైడర్‌లను పేర్కొనవచ్చు, వాటిలో మొదటిది వినియోగదారు యొక్క Qt ఇన్‌స్టాలేషన్‌ను (qmake శోధన ద్వారా) ఉపయోగించడానికి ప్రయత్నిస్తుంది మరియు అలాంటి ఇన్‌స్టాలేషన్ కనుగొనబడకపోతే, రెండవ ప్రొవైడర్ ఉపయోగించడానికి ప్రయత్నిస్తుంది సిస్టమ్ ద్వారా అందించబడిన Qt (pkg-configకి కాల్ ద్వారా) : CppApplication { {పేరు: "Qt.core" } ఫైళ్లపై ఆధారపడి ఉంటుంది: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • "qbspkgconfig" ప్రొవైడర్ జోడించబడింది, ఇది "ఫాల్‌బ్యాక్" మాడ్యూల్ ప్రొవైడర్‌ను భర్తీ చేసింది, అభ్యర్థించిన మాడ్యూల్ ఇతర ప్రొవైడర్‌ల ద్వారా రూపొందించబడకపోతే pkg-config ఉపయోగించి మాడ్యూల్‌ను రూపొందించడానికి ప్రయత్నించింది. "ఫాల్‌బ్యాక్" వలె కాకుండా, "qbspkgconfig" pkg-config యుటిలిటీకి కాల్ చేయడానికి బదులుగా ".pc" ఫైల్‌లను నేరుగా చదవడానికి అంతర్నిర్మిత C++ లైబ్రరీని ఉపయోగిస్తుంది, ఇది పనిని వేగవంతం చేస్తుంది మరియు ప్యాకేజీ డిపెండెన్సీల గురించి అదనపు సమాచారాన్ని అందిస్తుంది. pkg-config యుటిలిటీ.
  • భవిష్యత్ C++ ప్రమాణాన్ని నిర్వచించే C++23 స్పెసిఫికేషన్‌కు మద్దతు జోడించబడింది.
  • GCC టూల్‌కిట్ కోసం Elbrus E2K ఆర్కిటెక్చర్‌కు మద్దతు జోడించబడింది.
  • Android ప్లాట్‌ఫారమ్ కోసం, "--build-id" లింకర్ ఫ్లాగ్ కోసం డిఫాల్ట్ విలువను భర్తీ చేయడానికి Android.ndk.buildId ప్రాపర్టీ జోడించబడింది.
  • capnproto మరియు protobuf మాడ్యూల్స్ qbspkgconfig ప్రొవైడర్ అందించిన రన్‌టైమ్‌లను ఉపయోగించగల సామర్థ్యాన్ని అమలు చేస్తాయి.
  • ఫైల్ సవరణ సమయాలను అంచనా వేసేటప్పుడు మిల్లీసెకన్లు డ్రాప్ చేయబడటం వలన FreeBSDలో సోర్స్ ఫైల్‌లలో మార్పు ట్రాకింగ్‌తో సమస్యలు పరిష్కరించబడ్డాయి.
  • Conan ప్యాకేజీ మేనేజర్‌ని ఉపయోగించే ప్రాజెక్ట్‌లను డీబగ్ చేయడాన్ని సులభతరం చేయడానికి ConanfileProbe.verbose ప్రాపర్టీ జోడించబడింది.

అదనంగా, Qt 6.3 ఫ్రేమ్‌వర్క్ యొక్క ఆల్ఫా టెస్టింగ్ ప్రారంభాన్ని మేము గమనించవచ్చు, ఇది లాంగ్వేజ్ సర్వర్ మరియు JsonRpc 2.0 ప్రోటోకాల్‌లకు మద్దతుతో కొత్త మాడ్యూల్ “Qt లాంగ్వేజ్ సర్వర్”ను అమలు చేస్తుంది, కొత్త ఫంక్షన్‌లలో ఎక్కువ భాగం Qt కోర్కి జోడించబడింది. మాడ్యూల్, మరియు QML రకం MessageDialog Qt క్విక్ డైలాగ్స్ మాడ్యూల్‌లో అమలు చేయబడింది, ప్లాట్‌ఫారమ్ అందించిన డైలాగ్ బాక్స్‌లను ఉపయోగించడానికి, మీ స్వంత కస్టమ్ షెల్ ఎక్స్‌టెన్షన్‌లను రూపొందించడానికి ఒక మిశ్రమ Qt షెల్ సర్వర్ మరియు API Qt Wayland కంపోజిటర్ మాడ్యూల్‌కు జోడించబడ్డాయి. .

Qt QML మాడ్యూల్ qmltc (QML రకం కంపైలర్) కంపైలర్ యొక్క అమలును అందిస్తుంది, ఇది C++లోని తరగతుల్లో QML ఆబ్జెక్ట్ నిర్మాణాలను కంపైల్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. Qt 6.3 యొక్క వాణిజ్య వినియోగదారుల కోసం, Qt క్విక్ కంపైలర్ ఉత్పత్తి యొక్క పరీక్ష ప్రారంభమైంది, ఇది పైన పేర్కొన్న QML టైప్ కంపైలర్‌తో పాటు, QML స్క్రిప్ట్ కంపైలర్‌ను కలిగి ఉంటుంది, ఇది QML ఫంక్షన్‌లు మరియు వ్యక్తీకరణలను C++ కోడ్‌లోకి కంపైల్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. Qt క్విక్ కంపైలర్ యొక్క ఉపయోగం QML-ఆధారిత ప్రోగ్రామ్‌ల పనితీరును స్థానిక ప్రోగ్రామ్‌లకు దగ్గరగా తీసుకువస్తుందని గుర్తించబడింది; ప్రత్యేకించి, పొడిగింపులను కంపైల్ చేసేటప్పుడు, వివరణాత్మక సంస్కరణను ఉపయోగించడంతో పోలిస్తే ప్రారంభ మరియు అమలు సమయం సుమారు 30% తగ్గుతుంది. .

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి