Qbs 1.16 montageværktøj frigivelse

Introduceret frigivelse af montageværktøj Qbs 1.16. Dette er den tredje udgivelse, siden Qt Company forlod udviklingen af ​​projektet, udarbejdet af fællesskabet, der er interesseret i at fortsætte udviklingen af ​​Qbs. For at bygge Qbs kræves Qt blandt afhængighederne, selvom Qbs selv er designet til at organisere samlingen af ​​alle projekter. Qbs bruger en forenklet version af QML-sproget til at definere projektbyggescripts, som giver dig mulighed for at definere ret fleksible byggeregler, der kan forbinde eksterne moduler, bruge JavaScript-funktioner og oprette brugerdefinerede byggeregler.

Det scriptsprog, der bruges i Qbs, er tilpasset til at automatisere generering og parsing af build-scripts af integrerede udviklingsmiljøer. Derudover genererer Qbs ikke make-filer, men selv, uden mellemled såsom make-værktøjet, kontrollerer lanceringen af ​​compilere og linkere, og optimerer byggeprocessen baseret på en detaljeret graf over alle afhængigheder. Tilstedeværelsen af ​​indledende data om strukturen og afhængighederne i projektet giver dig mulighed for effektivt at parallelisere udførelsen af ​​operationer i flere tråde. For store projekter, der består af et stort antal filer og undermapper, kan udførelsen af ​​genopbygning ved hjælp af Qbs være flere gange hurtigere end make - genopbygning udføres næsten øjeblikkeligt og tvinger ikke udvikleren til at spilde tid på at vente.

Lad os huske, at Qt Company var i 2018 modtaget beslutning om at stoppe udviklingen af ​​Qbs. Qbs blev udviklet som en erstatning for qmake, men det blev i sidste ende besluttet at bruge CMake som hovedbyggesystemet for Qt på lang sigt. Udvikling af Qbs er nu fortsat som et selvstændigt projekt støttet af fællesskabet og interesserede udviklere. Qt Company-infrastrukturen bliver fortsat brugt til udvikling.

The main innovationer Qbs 1.16:

  • Sammenlægningen af ​​listeegenskaber i moduler forbundet af gensidige afhængigheder er blevet sikret, hvilket er vigtigt, for eksempel ved behandling af flag såsom cpp.staticLibraries;
  • Tilføjet automatisk detektion af GCC og IAR for Renesas mikrocontrollere;
  • Tilføjet understøttelse af Xcode 11.4 på macOS;
  • Mulighederne for clang-cl støttemodulet er blevet udvidet;
  • Giver automatisk detektion af MSVC, clang-cl og MinGW i profiler, hvor placeringen af ​​værktøjssættet ikke er eksplicit defineret;
  • Det er blevet forenklet at aktivere og konfigurere separat installeret fejlfindingsinformation (cpp.separateDebugInformation) gennem sektionerne Application og DynamicLibrary i projektparametrene;
  • Tilføjet understøttelse af Qt 5.14 til Android og opdateret qbs-setup-android-værktøjet;
  • Tilføjet understøttelse af JSON-filer genereret af moc-værktøjet (Qt >= 5.15) til indstillingerne Qt.core.generateMetaTypesFile og Qt.core.metaTypesInstallDir;
  • Tilføjet understøttelse af den nye typeerklæringsmekanisme for QML introduceret i Qt 5.15;
  • Tilføjet ConanfileProbe-indstilling for at forenkle Qbs-integration med pakkehåndtering Conan (for C/C++).

Kilde: opennet.ru

Tilføj en kommentar