Qt Company kogumise tööriistakomplekt (Qt Build Suite). See on viimane Qbs-i versioon, mille on valmistanud Qt Company. Tuletame meelde, et eelnevalt tehti otsus Qbs-i arendamise lĂ”petamiseks. Qbs arenes vĂ€lja kui qmake'i asendaja, kuid lĂ”puks otsustati kasutada CMake'i kui peamist kogumissĂŒsteemi Qt jaoks pikaajaliselt.
LĂ€hiajal oodatakse sĂ”ltumatu projekti loomist Qbs-i arendamise jĂ€tkamiseks kogukonna jĂ”ududega, mille saatus sĂ”ltub sĂ”ltumatute arendajate huvist kĂ€sitletava kogumissĂŒsteemi vastu. Qt Company lĂ”petab Qbs-i kallal töötamise, kuna on vajalik lisainvesteeringud ja Qbs-i edendamisega seotud kĂ”rged kulud.
Tuletame meelde, et Qbs-i kogumiseks on vajalik Qt, kuigi Qbs on mÔeldud igasuguste projektide kogumise korraldamiseks. Qbs kasutab projektikogumise stsenaariumide mÀÀratlemiseks lihtsustatud QML keelt, mis vÔimaldab mÀÀratleda piisavalt paindlikke kogumise reegleid, kuhu saab integreerida vÀliseid mooduleid, kasutada JavaScripti funktsioone ja luua vabalt mÀÀratletud kogumisreegleid.
Qbs ei genereeri make-faile ja haldab iseseisvalt kompilaatoreid ja linkerite kÀivitamist, optimeerides kogemisprotsessi kÔikide sÔltuvuste detailse graafi alusel. Algandmete olemasolu projekti struktuuri ja sÔltuvuste kohta vÔimaldab tÔhusalt paralleelseid tehinguid.
Qbs 1.13 peamised uuendused:
- On lisatud vĂ”imalus kasutada projektides pkg-config mooduleid sama sĂ”ltuvuste töötlemise mehhanismi abil, mida kasutatakse Qbs-i moodulite puhul. NĂ€iteks, kui sĂŒsteemis on olemas pkg-configi pĂ”hine kogumispakett OpenSSL jaoks, piisab, kui Qbs-i projektis lisate sĂ”ltuvusena 'Depends { name: «openssl» }';
- On ellu viidud automaatne Qt moodulite kÀttesaadavuse mÀÀratlemine. Arendajatel ei ole enam vaja profiili loomisega tegeleda moodulite teede osas kÀsu setup-qt abil, kÔik vÀljendatud Qt sÔltuvused seadistatakse automaatselt;
- Lisatud vahendid kĂ€ivitatavate koostamisĂŒlesannete arvu kontrollimiseks eraldi meeskondade tasemel. NĂ€iteks, seondumise teostamisel tekkib suur koormus sisend/vĂ€ljundile ja tarbitakse mĂ€rkimisvÀÀrset hulka RAM-i, seetĂ”ttu nĂ”uab linkija teistsuguseid kĂ€ivitamise seadeid kui kompilaator. Eri seadeid saab nĂŒĂŒd mÀÀrata kĂ€suga «qbs âjob-limits linker:2,compiler:8»;
- Kavad on muudetud skriptikeeles. Reeglid saab nĂŒĂŒd mÀÀrata ilma vĂ€ljundi muudetud faili nimetamata ja projekti failide alguses ei ole enam kohustuslik kasutada direktiivi «import qbs». Elementides Application, DynamicLibrary ja StaticLibrary on lisatud uued omadused install ja installDir, et lihtsustada tĂ€idetavate failide paigaldamist;
- Lisatud tuge rekurssiivsele skaneerimisele linkimise skriptides;
GNU linkija; - C++ keeles on rakendatud omadus cpp.linkerVariant, et sundida kasutama linkijaid ld.gold, ld.bfd vÔi lld;
- Qt jaoks on esitatud omadus Qt.core.enableBigResources suurte Qt ressursside loomiseks;
- Vananenud elementi AndroidApk on soovitatav asendada ĂŒldise tĂŒĂŒbiga Application;
- Lisatud moodul testide loomiseks autotest'i pÔhjal;
- Lisatud moodul texttemplate omadustega, mis sarnanevad QMAKE_SUBSTITUTES-ile qmake'is;
- Lisatud algne tugi Protocol Buffers formaadi jaoks C++ ja Objective-C jaoks.
Allikas: opennet.ru
