Qbs 1.16 monteringsverktøyutgivelse

Introdusert frigjøring av monteringsverktøy Qbs 1.16. Dette er den tredje utgivelsen siden Qt Company forlot utviklingen av prosjektet, utarbeidet av samfunnet som er interessert i å fortsette utviklingen av Qbs. For å bygge Qbs kreves Qt blant avhengighetene, selv om Qbs i seg selv er designet for å organisere sammenstillingen av alle prosjekter. Qbs bruker en forenklet versjon av QML-språket for å definere prosjektbyggingsskript, som lar deg definere ganske fleksible byggeregler som kan koble til eksterne moduler, bruke JavaScript-funksjoner og lage tilpassede byggeregler.

Skriptspråket som brukes i Qbs er tilpasset for å automatisere generering og parsing av byggeskript av integrerte utviklingsmiljøer. I tillegg genererer ikke Qbs makefiler, men selv, uten mellomledd som make-verktøyet, kontrollerer lanseringen av kompilatorer og linkere, og optimaliserer byggeprosessen basert på en detaljert graf over alle avhengigheter. Tilstedeværelsen av innledende data om strukturen og avhengighetene i prosjektet lar deg effektivt parallellisere utførelsen av operasjoner i flere tråder. For store prosjekter som består av et stort antall filer og underkataloger, kan ytelsen til gjenoppbygging med Qbs være flere ganger raskere enn make - gjenoppbygging utføres nesten umiddelbart og tvinger ikke utvikleren til å kaste bort tid på å vente.

La oss huske at i 2018 var Qt Company mottatt beslutning om å slutte å utvikle Qbs. Qbs ble utviklet som en erstatning for qmake, men til slutt ble det besluttet å bruke CMake som hovedbyggesystemet for Qt på lang sikt. Utviklingen av Qbs har nå fortsatt som et uavhengig prosjekt støttet av samfunnet og interesserte utviklere. Qt Company-infrastrukturen fortsetter å bli brukt til utvikling.

Den viktigste innovasjoner Qbs 1.16:

  • Sammenslåingen av listeegenskaper i moduler koblet sammen av gjensidige avhengigheter er sikret, noe som er viktig for eksempel ved behandling av flagg som cpp.staticLibraries;
  • Lagt til automatisk deteksjon av GCC og IAR for Renesas mikrokontrollere;
  • Lagt til støtte for Xcode 11.4 på macOS;
  • Mulighetene til clang-cl støttemodulen er utvidet;
  • Gir automatisk deteksjon av MSVC, clang-cl og MinGW i profiler der plasseringen av verktøysettet ikke er eksplisitt definert;
  • Det har blitt forenklet å aktivere og konfigurere separat installert feilsøkingsinformasjon (cpp.separateDebugInformation) gjennom applikasjons- og DynamicLibrary-delene i prosjektparameterne;
  • Lagt til støtte for Qt 5.14 for Android og oppdaterte qbs-setup-android-verktøyet;
  • Lagt til støtte for JSON-filer generert av moc-verktøyet (Qt >= 5.15) til Qt.core.generateMetaTypesFile og Qt.core.metaTypesInstallDir-innstillingene;
  • Lagt til støtte for den nye typedeklarasjonsmekanismen for QML introdusert i Qt 5.15;
  • Lagt til ConanfileProbe-innstilling for å forenkle Qbs-integrasjon med pakkebehandling Conan (for C/C++).

Kilde: opennet.ru

Legg til en kommentar