د Qt شرکت
په نږدې راتلونکي کې ، تمه کیږي چې د ټولنې لخوا د Qbs پراختیا ته دوام ورکولو لپاره به یوه خپلواکه پروژه رامینځته شي ، چې برخلیک به یې د خپلواک پراختیا کونکو لخوا د پوښتنې لاندې د مجلس سیسټم کې ګټو پورې اړه ولري. د Qt شرکت د Qbs د ودې لپاره د اضافي پانګوونې او لوړ لګښتونو اړتیا له امله په Qbs کې کار ودروي.
راځئ چې یادونه وکړو چې د Qbs جوړولو لپاره، Qt د انحصار په توګه اړین دی، که څه هم Qbs پخپله د هرې پروژې د غونډو تنظیم کولو لپاره ډیزاین شوی. Qbs د پروژې جوړونې سکریپټونو تعریف کولو لپاره د QML ژبې ساده نسخه کاروي ، کوم چې تاسو ته اجازه درکوي د کافي انعطاف وړ جوړونې قواعد تعریف کړئ چې کولی شي بهرني ماډلونه وصل کړي ، د جاواسکریپټ افعال وکاروي ، او د دودیز جوړونې قواعد رامینځته کړي.
Qbs میک فایلونه نه رامینځته کوي او په خپلواکه توګه د تالیف کونکو او لینکرونو لانچ کنټرولوي ، د ټولو انحصارونو تفصيلي ګراف پراساس د جوړونې پروسې اصلاح کوي. په پروژه کې د جوړښت او انحصار په اړه د لومړنیو معلوماتو شتون تاسو ته اجازه درکوي په مؤثره توګه په څو برخو کې د عملیاتو اجرا کول موازي کړي.
په Qbs 1.13 کې کلیدي نوښتونه:
- د ورته انحصار پروسس کولو میکانیزم په کارولو سره په پروژو کې د pkg-config ماډلونو کارولو وړتیا اضافه کړه چې د Qbs ماډلونو لپاره کارول کیږي. د مثال په توګه، که ستاسو سیسټم د pkg-config پر بنسټ د OpenSSL جوړولو لپاره بسته ولري، د Qbs په پروژه کې د کارولو لپاره، یوازې 'Depends { name: "openssl" }' اضافه کړئ؛
- د موجود Qt ماډلونو اتوماتیک کشف پلي شوی. پراختیا کونکي نور اړتیا نلري چې د setup-qt کمانډ په کارولو سره د ماډل لارو سره پروفایل رامینځته کړي؛ ټول Qt ماډلونه چې په انحصار کې مشخص شوي به په اوتومات ډول تنظیم شي؛
- د انفرادي کمانډونو په کچه په موازي ډول د مجلس کارونو شمیر کنټرولولو لپاره وسیلې اضافه شوي. د مثال په توګه ، لینک کول لوی I/O بار رامینځته کوي او د پام وړ مقدار RAM مصرفوي ، نو لینکر د کمپیلر په پرتله مختلف پیل کولو ترتیباتو ته اړتیا لري. جلا تنظیمات اوس د کمانډ په کارولو سره تنظیم کیدی شي "qbs — job-limit linker:2,compiler:8"؛
- د لیکلو په ژبه کې بدلونونه راغلي دي. قواعد اوس د محصول لپاره د سټب فایل مشخص کولو پرته تعریف کیدی شي ، او دا اړینه نده چې د پروژې فایلونو په پیل کې د "وارد qbs" لارښود وکاروئ. نوي install and installDir ملکیتونه په اپلیکیشن کې اضافه شوي ، ډینامیک کتابتون او سټیټیک کتابتون د اجرا وړ فایلونو ډیر اسانه نصبولو لپاره؛
- د لینکر سکریپټونو تکراري سکین کولو لپاره ملاتړ اضافه شوی
د GNU لینکر؛ - د C++ لپاره، د cpp.linkerVariant ملکیت د ld.gold، ld.bfd یا lld لینکر کارولو مجبورولو لپاره پلي شوی؛
- Qt د لوی Qt سرچینې رامینځته کولو لپاره Qt.core.enableBigResources ملکیت معرفي کوي
- د متروک AndroidApk عنصر پرځای ، وړاندیز شوی چې د غوښتنلیک عمومي ډول وکاروئ؛
- د آټوټیسټ پراساس د ازموینو رامینځته کولو لپاره ماډل اضافه شوی؛
- په qmake کې QMAKE_SUBSTITUTES ته ورته وړتیاو سره د متن ټیمپلیټ ماډل اضافه شوی؛
- د C++ او هدف-C لپاره د پروتوکول بفر فارمیټ لپاره لومړني ملاتړ اضافه شوی.
سرچینه: opennet.ru