Qbs 1.16 kokoonpanotyökalun vapautus

Lähettäjä kokoonpanotyökalujen vapauttaminen Qbs 1.16. Tämä on kolmas julkaisu sen jälkeen, kun Qt Company jätti projektin kehityksen, ja sen on valmistellut Qbs:n kehittämisen jatkamisesta kiinnostuneet yhteisöt. Qbs:n rakentamiseen vaaditaan riippuvuuksien joukossa Qt, vaikka itse Qbs on suunniteltu järjestämään minkä tahansa projektin kokoonpano. Qbs käyttää yksinkertaistettua versiota QML-kielestä projektin koontiskriptien määrittämiseen, mikä mahdollistaa melko joustavien koontisääntöjen määrittämisen, jotka voivat yhdistää ulkoisia moduuleja, käyttää JavaScript-funktioita ja luoda mukautettuja koontisääntöjä.

Qbs:ssä käytetty komentosarjakieli on mukautettu automatisoimaan IDE:iden koontiskriptien luominen ja jäsentäminen. Lisäksi Qbs ei luo make-tiedostoja, ja itse ilman välittäjiä, kuten make-apuohjelmaa, hallitsee kääntäjien ja linkittäjien käynnistystä optimoiden koontiprosessin yksityiskohtaisen kaavion perusteella kaikista riippuvuuksista. Alkutietojen läsnäolo projektin rakenteesta ja riippuvuuksista antaa sinun rinnastaa toimintojen suorittamisen tehokkaasti useissa säikeissä. Suurissa projekteissa, jotka koostuvat suuresta määrästä tiedostoja ja alihakemistoja, uudelleenrakennussuorituskyky Qbs:llä voi olla useita kertoja parempi kuin make - uusinta on lähes välitön, eikä kehittäjä joudu odottamaan aikaa.

Muistakaamme, että vuonna 2018 Qt Company oli vastaanotettu päätös lopettaa Qbs:n kehittäminen. Qbs kehitettiin korvaamaan qmake, mutta lopulta päätettiin käyttää CMakea Qt:n päärakennusjärjestelmänä pitkällä aikavälillä. Qbs:n kehittäminen on nyt jatkunut itsenäisenä projektina yhteisön ja kiinnostuneiden kehittäjien tukemana. Qt Companyn infrastruktuuria käytetään edelleen kehittämiseen.

Pääasiallinen innovaatioita Qbs 1.16:

  • Luettelo-ominaisuuksien yhdistäminen keskinäisillä riippuvuuksilla yhdistetyissä moduuleissa on varmistettu, mikä on tärkeää esimerkiksi käsiteltäessä lippuja, kuten cpp.staticLibraries;
  • Lisätty automaattinen GCC:n ja IAR:n tunnistus Renesas-mikrokontrollereille;
  • Lisätty tuki Xcode 11.4:lle macOS:ssä;
  • Clang-cl-tukimoduulin ominaisuuksia on laajennettu;
  • Tarjoaa automaattisen MSVC:n, clang-cl:n ja MinGW:n tunnistamisen profiileissa, joissa työkalupakin sijaintia ei ole erikseen määritelty;
  • On yksinkertaistettu ottaa käyttöön ja määrittää erikseen asennetut virheenkorjaustiedot (cpp.separateDebugInformation) projektiparametrien Application- ja DynamicLibrary-osioiden kautta.
  • Lisätty tuki Qt 5.14:lle Androidille ja päivitetty qbs-setup-android-apuohjelma;
  • Lisätty tuki moc-apuohjelman luomille JSON-tiedostoille (Qt >= 5.15) Qt.core.generateMetaTypesFile- ja Qt.core.metaTypesInstallDir-asetuksiin;
  • Lisätty tuki Qt 5.15:ssä esitellylle uudelle QML:n tyypin ilmoitusmekanismille;
  • Lisätty ConanfileProbe-asetus yksinkertaistamaan Qbs-integraatiota paketinhallinnan kanssa Conan (C/C++:lle).

Lähde: opennet.ru

Lisää kommentti