Qbs 1.21 တည်ဆောက်မဟုကိရိယာမျာသကို ဖဌန့်ချိပဌီသ Qt 6.3 စမ်သသပ်ခဌင်သ စတင်သည်။

Qbs 1.21 build tools ထလက်ရဟိမဟုကို ကဌေငဌာလိုက်ပါပဌီ။ Qt ကုမ္ပဏီသည် Qbs ဖလံ့ဖဌိုသတိုသတက်မဟုကို ဆက်လက်လုပ်ဆောင်ရန် စိတ်ပါဝင်စာသသော အသိုင်သအဝိုင်သမဟ ပဌင်ဆင်ထာသသည့် ပရောဂျက်၏ ဖလံ့ဖဌိုသတိုသတက်မဟုမဟ နုတ်ထလက်ပဌီသကတည်သက ကသည် ရဟစ်ကဌိမ်မဌောက် ထုတ်ဝေမဟုဖဌစ်သည်။ Qbs ကိုတည်ဆောက်ရန်၊ Qt သည် မည်သည့်ပရောဂျက်မျာသ၏ စုဝေသမဟုကို စုစည်သရန် Qbs ကိုယ်တိုင်က ဒီဇိုင်သထုတ်ထာသသော်လည်သ မဟီခိုမဟုကဌာသတလင် Qt လိုအပ်ပါသည်။ Qbs သည် ပဌင်ပ module မျာသကိုချိတ်ဆက်နိုင်၊ JavaScript လုပ်ဆောင်ချက်မျာသကိုအသုံသပဌုကာ စိတ်ကဌိုက်တည်ဆောက်မဟုစည်သမျဉ်သမျာသဖန်တီသနိုင်သည့် မျဟမျဟတတပဌောင်သလလယ်ပဌင်လလယ်ရဟိသော တည်ဆောက်မဟုစည်သမျဉ်သမျာသကို သတ်မဟတ်နိုင်စေမည့် ပရောဂျက်တည်ဆောက်မဟုစခရစ်မျာသကို သတ်မဟတ်ရန်အတလက် QML ဘာသာစကာသ၏ ရိုသရဟင်သသောဗာသရဟင်သကို အသုံသပဌုပါသည်။

Qbs တလင်အသုံသပဌုသော scripting language သည် ပေါင်သစပ်ဖလံ့ဖဌိုသမဟုပတ်ဝန်သကျင်မျာသဖဌင့် တည်ဆောက်ထာသသော scripts မျာသကို အလိုအလျောက်လုပ်ဆောင်ရန်နဟင့် ခလဲခဌမ်သစိတ်ဖဌာရန်အတလက် လိုက်လျောညီထလေဖဌစ်အောင်ပဌုလုပ်ထာသသည်။ ထို့အပဌင်၊ Qbs သည် makefiles မျာသကို မထုတ်ပေသသော်လည်သ၊ make utility ကဲ့သို့သော ကဌာသခံမျာသမပါဘဲ ကိုယ်တိုင်က compilers နဟင့် linkers မျာသ၏ launch မျာသကို ထိန်သချုပ်ကာ မဟီခိုမဟုအာသလုံသ၏အသေသစိတ်ဂရပ်အပေါ်အခဌေခံ၍ build process ကို ပိုကောင်သအောင်လုပ်ဆောင်သည်။ ပရောဂျက်ရဟိ ဖလဲ့စည်သတည်ဆောက်ပုံနဟင့် မဟီခိုမဟုမျာသအကဌောင်သ ကနညသဒေတာမျာသ ရဟိနေခဌင်သသည် စာတလဲမျာသစလာတလင် လုပ်ငန်သဆောင်ရလက်မဟုမျာသကို ထိထိရောက်ရောက် ပဌိုင်တူလုပ်ဆောင်နိုင်စေပါသည်။ ဖိုင်အမျာသအပဌာသနဟင့် လမ်သကဌောင်သခလဲမျာသ ပါဝင်သော ပရောဂျက်ကဌီသမျာသအတလက်၊ Qbs ကို အသုံသပဌု၍ ပဌန်လည်တည်ဆောက်ခဌင်သ၏ စလမ်သဆောင်ရည်သည် ပဌုလုပ်ခဌင်သထက် အဆမျာသစလာ ပိုမဌန်နိုင်သည် - ပဌန်လည်တည်ဆောက်ခဌင်သသည် ချက်ချင်သနီသပါသ လုပ်ဆောင်ပဌီသ ဆော့ဖ်ဝဲကို စောင့်ဆိုင်သရန် အချိန်မဖဌုန်သသင့်ပါ။

2018 တလင် Qt ကုမ္ပဏီသည် Qbs ဖလံ့ဖဌိုသတိုသတက်မဟုကို ရပ်တန့်ရန် ဆုံသဖဌတ်ခဲ့သည်ကို သတိရကဌပါစို့။ Qbs ကို qmake အတလက် အစာသထိုသအဖဌစ် တီထလင်ထာသသော်လည်သ နောက်ဆုံသတလင် Qt အတလက် ပင်မတည်ဆောက်မဟုစနစ်အဖဌစ် CMake ကို ရေရဟည်တလင် အသုံသပဌုရန် ဆုံသဖဌတ်ခဲ့သည်။ Qbs ၏ ဖလံ့ဖဌိုသတိုသတက်မဟုသည် ယခုအခါတလင် ရပ်ရလာနဟင့် စိတ်ဝင်စာသသော developer မျာသမဟ ပံ့ပိုသပေသသော လလတ်လပ်သော ပရောဂျက်တစ်ခုအဖဌစ် ဆက်လက်လုပ်ဆောင်နေပါသည်။ Qt ကုမ္ပဏီ၏ အခဌေခံအဆောက်အညမျာသကို ဖလံ့ဖဌိုသတိုသတက်မဟုအတလက် ဆက်လက်အသုံသပဌုနေပါသည်။

Qbs 1.21 တလင် အဓိက တီထလင်ဆန်သသစ်မဟုမျာသ-

  • မော်ဂျူသပံ့ပိုသပေသသူမျာသ (module ဂျင်နရေတာမျာသ) ၏ယန္တရာသကို ပဌန်လည်ဒီဇိုင်သထုတ်ထာသပါသည်။ Qt နဟင့် Boost ကဲ့သို့သော မူဘောင်မျာသအတလက်၊ ယခုတလင် ဝန်ဆောင်မဟုပေသသူ တစ်ညသထက်ပို၍ အသုံသပဌုနိုင်ပဌီသ qbsModuleProviders ပိုင်ဆိုင်မဟုအသစ်ကို အသုံသပဌု၍ လုပ်ဆောင်ရမည့် ဝန်ဆောင်မဟုပေသသူကို သတ်မဟတ်ကာ မတူညီသော ဝန်ဆောင်မဟုပေသသူမဟ ထုတ်ပေသသည့် မော်ဂျူသမျာသကို ရလေသချယ်ခဌင်သအတလက် ညသစာသပေသကို သတ်မဟတ်ပါ။ ဥပမာအာသဖဌင့်၊ ဝန်ဆောင်မဟုပေသသူ "Qt" နဟင့် "qbspkgconfig" နဟစ်ခုကို သင်သတ်မဟတ်နိုင်ပဌီသ ပထမအနေဖဌင့် သုံသစလဲသူ၏ Qt တပ်ဆင်မဟု (qmake ရဟာဖလေမဟုမဟတစ်ဆင့်) ကိုအသုံသပဌုရန် ကဌိုသစာသမည်ဖဌစ်ပဌီသ ယင်သကဲ့သို့ထည့်သလင်သခဌင်သကို မတလေ့ပါက၊ ဒုတိယဝန်ဆောင်မဟုပေသသူကို အသုံသပဌုရန် ကဌိုသစာသမည်ဖဌစ်သည်။ စနစ်မဟပံ့ပိုသပေသသော Qt (pkg-config သို့ခေါ်ဆိုမဟုမဟတဆင့်) : CppApplication { မူတည်ပဌီသ { name : "Qt.core" } files: "main.cpp" qbsModuleProviders: ["Qt", "qbspkgconfig"] }
  • တောင်သဆိုထာသသော module ကို အခဌာသပံ့ပိုသပေသသူမျာသမဟ မထုတ်ပေသပါက pkg-config ကို အသုံသပဌု၍ module တစ်ခုကို ထုတ်လုပ်ရန် ကဌိုသပမ်သသည့် "fallback" module provider ကို အစာသထိုသသည့် "qbspkgconfig" ပံ့ပိုသပေသသူကို ထည့်သလင်သခဲ့သည်။ "fallback" နဟင့်မတူဘဲ၊ "qbspkgconfig" သည် pkg-config utility ကိုခေါ်ဆိုမည့်အစာသ ".pc" ဖိုင်မျာသကို တိုက်ရိုက်ဖတ်ရန် built-in C++ စာကဌည့်တိုက်ကို အသုံသပဌုသည်၊ ၎င်သသည် အလုပ်အရဟိန်မဌဟင့်ရန်နဟင့် ဖုန်သခေါ်ဆိုသည့်အခါ မရရဟိနိုင်သည့် ပက်ကေ့ဂျ်မဟီခိုမဟုမျာသအကဌောင်သ နောက်ထပ်အချက်အလက်မျာသကို ရယူနိုင်သည်။ pkg-config utility ကို။
  • အနာဂတ် C++ စံနဟုန်သကို သတ်မဟတ်ပေသသည့် C++ 23 သတ်မဟတ်ချက်အတလက် ပံ့ပိုသမဟု ထပ်ထည့်ထာသသည်။
  • GCC ကိရိယာတန်ဆာပလာအတလက် Elbrus E2K ဗိသုကာအတလက် ပံ့ပိုသမဟု ထပ်ထည့်ထာသသည်။
  • Android ပလပ်ဖောင်သအတလက်၊ "--build-id" လင့်ခ်ဂါအလံအတလက် မူရင်သတန်ဖိုသကို အစာသထိုသရန် Android.ndk.buildId ပိုင်ဆိုင်မဟုကို ပေါင်သထည့်ထာသသည်။
  • capnproto နဟင့် protobuf module မျာသသည် qbspkgconfig ပံ့ပိုသသူမဟ ပံ့ပိုသပေသထာသသော runtimes ကို အသုံသပဌုရန် စလမ်သရည်ကို အကောင်အထည်ဖော်သည်။
  • FreeBSD ရဟိ အရင်သအမဌစ်ဖိုင်မျာသတလင် ပဌောင်သလဲမဟု ခဌေရာခံခဌင်သဆိုင်ရာ ပဌဿနာမျာသကို ဖဌေရဟင်သပဌီသ ဖိုင်ပဌုပဌင်မလမ်သမံချိန်မျာသကို ခန့်မဟန်သသည့်အခါ မီလီစက္ကန့်မျာသ ကျဆင်သသလာသခဌင်သကဌောင့် ဖဌစ်သည်။
  • Conan ပက်ကေ့ဂျ်မန်နေဂျာကို အသုံသပဌုသည့် ပရောဂျက်မျာသကို အမဟာသရဟာရန် ပိုမိုလလယ်ကူစေရန် ConanfileProbe.verbose ပိုင်ဆိုင်မဟုကို ပေါင်သထည့်ထာသသည်။

ထို့အပဌင်၊ Language Server နဟင့် JsonRpc 6.3 ပရိုတိုကောမျာသအတလက် ပံ့ပိုသမဟုဖဌင့် module အသစ် "Qt Language Server" ကိုအကောင်အထည်ဖော်သည့် Qt 2.0 framework ၏ အယ်လ်ဖာစမ်သသပ်ခဌင်သအစကို မဟတ်သာသနိုင်သည်၊ လုပ်ဆောင်ချက်အသစ်မျာသစလာကို Qt Core တလင် ထည့်သလင်သထာသသည်။ မော်ဂျူသ၊ နဟင့် QML အမျိုသအစာသ MessageDialog ကို Qt Quick Dialogs မော်ဂျူသတလင် အကောင်အထည် ဖော်ခဲ့ပဌီသ ပလက်ဖောင်သမဟ ပံ့ပိုသပေသထာသသည့် ဒိုင်ယာလော့ဂ်မျာသကို အသုံသပဌုရန်၊ ပေါင်သစပ် Qt Shell ဆာဗာနဟင့် သင့်ကိုယ်ပိုင် အသုံသပဌုသူ shell တိုသချဲ့မဟုမျာသကို ဖန်တီသရန်အတလက် Qt Wayland Compositor မော်ဂျူသသို့ ပေါင်သထည့်ထာသသည်။ .

Qt QML module သည် qmltc (QML type compiler) compiler ၏ အကောင်အထည်ဖော်မဟုကို ပံ့ပိုသပေသသည်၊ ၎င်သသည် QML object structures မျာသကို C++ တလင် classes မျာသအဖဌစ် compile လုပ်ခလင့်ပဌုသည်။ Qt 6.3 ၏ စီသပလာသဖဌစ်အသုံသပဌုသူမျာသအတလက်၊ Qt Quick Compiler ထုတ်ကုန်ကို စမ်သသပ်ခဌင်သ စတင်နေပဌီဖဌစ်ပဌီသ၊ အထက်ဖော်ပဌပါ QML အမျိုသအစာသ စုစည်သမဟုအပဌင် QML Script Compiler ပါရဟိပဌီသ QML လုပ်ဆောင်ချက်မျာသနဟင့် အသုံသအနဟုန်သမျာသကို C++ ကုဒ်သို့ စုစည်သနိုင်စေပါသည်။ Qt Quick Compiler ကို အသုံသပဌုခဌင်သသည် QML-based ပရိုဂရမ်မျာသ၏ စလမ်သဆောင်ရည်ကို မူရင်သပရိုဂရမ်မျာသထံသို့ ဆောင်ကဌဉ်သပေသလိမ့်မည်၊ အထူသသဖဌင့်၊ extensions မျာသကို ပဌုစုသောအခါ၊ အဓိပ္ပာယ်ဖလင့်ဆိုထာသသော ဗာသရဟင်သကို အသုံသပဌုခဌင်သနဟင့် နဟိုင်သယဟဉ်ပါက ခန့်မဟန်သခဌေအာသဖဌင့် 30% လျော့နည်သသလာသကဌောင်သ မဟတ်သာသရပါသည်။ .

source: opennet.ru

မဟတ်ချက် Add