Qbsi ehitustööriistade lõplik versioon on avaldatud

Qt ettevõte опубликовала montaažitööriistad Qbs 1.13 (Qt Build Suite). See on Qt Company toodetud Qb-de uusim väljalase. Meenutagem, mis juhtus varem võetud otsus lõpetada Qb-de arendamine. Qbs töötati välja qmake asendusena, kuid lõpuks otsustati pikemas perspektiivis kasutada CMake'i Qt peamise ehitussüsteemina.

Lähiajal on oodata kogukonnapoolse Qb-de arendamise jätkamiseks iseseisva projekti loomist, mille saatus sõltub sõltumatute arendajate huvist kõnealuse koostesüsteemi vastu. Qt Company lõpetab Qb-de kallal töötamise, kuna on vaja täiendavaid investeeringuid ja Qb-de reklaamimisega seotud suuri kulusid.

Tuletagem meelde, et Qb-de ehitamiseks on Qt vajalik sõltuvusena, kuigi Qbs ise on mõeldud mis tahes projektide kokkupanemise korraldamiseks. Qbs kasutab projekti koostamise skriptide määratlemiseks QML-keele lihtsustatud versiooni, mis võimaldab määratleda üsna paindlikke ehitusreegleid, millega saab ühendada väliseid mooduleid, kasutada JavaScripti funktsioone ja luua kohandatud ehitusreegleid.
Qbs ei genereeri makefaile ja juhib iseseisvalt kompilaatorite ja linkerite käivitamist, optimeerides koostamisprotsessi kõigi sõltuvuste üksikasjaliku graafiku põhjal. Algandmete olemasolu projekti struktuuri ja sõltuvuste kohta võimaldab toimingute täitmist mitmes lõimes tõhusalt paralleelstada.

Peamised uuendused Qbs 1.13-s:

  • Lisati võimalus kasutada pkg-config mooduleid projektides, mis kasutavad sama sõltuvustöötlusmehhanismi, mida kasutatakse Qbs moodulite puhul. Näiteks kui teie süsteemis on pakett OpenSSL-i loomiseks pkg-config põhjal, lisage selle kasutamiseks Qbs-projektis lihtsalt 'Depends { name: "openssl" }';
  • Rakendatud saadaolevate Qt-moodulite automaatne tuvastamine. Arendajad ei pea enam käsku setup-qt kasutades moodulite teedega profiili looma, kõik sõltuvustes määratud Qt-moodulid konfigureeritakse automaatselt;
  • Lisatud tööriistad paralleelselt töötavate montaažiülesannete arvu kontrollimiseks üksikute käskude tasemel. Näiteks loob linkimine suure I/O koormuse ja kulutab märkimisväärsel hulgal RAM-i, seega vajab linker teistsuguseid käivitusseadeid kui kompilaator. Eraldi sätteid saab nüüd määrata käsuga “qbs —job-limits linker:2,compiler:8”;
  • Skriptikeeles on tehtud muudatusi. Reegleid saab nüüd määratleda ilma väljundi tünnfaili määramata ja projektifailide alguses ei ole vaja kasutada käsku “import qbs”. Rakenduse, DynamicLibrary ja StaticLibrary elementidele on lisatud uued install ja installDir atribuudid käivitatavate failide mugavamaks paigaldamiseks;
  • Lisatud linkeri skriptide rekursiivse skannimise tugi
    GNU linker;

  • C++ puhul on atribuut cpp.linkerVariant rakendatud linkerite ld.gold, ld.bfd või lld kasutamise sundimiseks;
  • Qt tutvustab Qt.core.enableBigResources atribuuti suurte Qt-ressursside loomiseks
  • Vananenud AndroidApk elemendi asemel tehakse ettepanek kasutada üldist rakenduse tüüpi;
  • Lisatud moodul testide loomiseks automaattesti alusel;
  • Lisatud tekstimalli moodul, mille võimalused on sarnased funktsiooniga QMAKE_SUBSTITUTES qmake;
  • Lisatud esialgne tugi protokollipuhvrite vormingule C++ ja Objective-C jaoks.

Allikas: opennet.ru

Lisa kommentaar