Qbs 1.17 montagetool vrijgave

Geïntroduceerd vrijgave van montagegereedschap Qbs 1.17. Dit is de vierde release sinds Qt Company de ontwikkeling van het project heeft verlaten, voorbereid door de gemeenschap die geïnteresseerd is in het voortzetten van de ontwikkeling van Qbs. Om Qbs te bouwen is Qt vereist tussen de afhankelijkheden, hoewel Qbs zelf is ontworpen om de assemblage van projecten te organiseren. Qbs gebruikt een vereenvoudigde versie van de QML-taal om projectbouwscripts te definiëren, waarmee u redelijk flexibele bouwregels kunt definiëren die externe modules kunnen verbinden, JavaScript-functies kunnen gebruiken en aangepaste bouwregels kunnen maken.

De scripttaal die in Qbs wordt gebruikt, is aangepast om het genereren en ontleden van buildscripts door IDE's te automatiseren. Bovendien genereert Qbs geen makefiles en regelt het zelf, zonder tussenpersonen zoals het make-hulpprogramma, de lancering van compilers en linkers, waarbij het bouwproces wordt geoptimaliseerd op basis van een gedetailleerde grafiek van alle afhankelijkheden. Door de aanwezigheid van initiële gegevens over de structuur en afhankelijkheden in het project kunt u de uitvoering van bewerkingen in verschillende threads effectief parallelliseren. Voor grote projecten die uit een groot aantal bestanden en submappen bestaan, kan het opnieuw opbouwen met behulp van Qbs vele malen beter presteren dan make - het opnieuw opbouwen gebeurt vrijwel onmiddellijk en de ontwikkelaar hoeft niet lang te wachten.

Laten we niet vergeten dat in 2018 de Qt Company dat was ontvangen besluit om te stoppen met de ontwikkeling van Qbs. Qbs is ontwikkeld als vervanging voor qmake, maar uiteindelijk werd besloten om CMake op de lange termijn te gebruiken als het belangrijkste bouwsysteem voor Qt. De ontwikkeling van Qbs is nu voortgezet als een onafhankelijk project, ondersteund door de gemeenschap en geïnteresseerde ontwikkelaars. De infrastructuur van Qt Company wordt nog steeds gebruikt voor ontwikkeling.

De belangrijkste innovaties Vraag 1.17:

  • Eerste ondersteuning toegevoegd Qt 6.
  • Capnp-module toegevoegd om het dataserialisatieprotocol te gebruiken Cap'n Proto in C++-toepassingen.
  • Toegevoegd mogelijkheid om product- en projectvariabelen op te geven aan de rechterkant van de eigenschapsdefinities van moduleProvider (bijvoorbeeld "moduleProviders.mygenerator.chooseLettersFrom: project.beginning").
  • Ondersteuning toegevoegd voor tools voor het bouwen van C/C++-projecten om bovenop hardware te werken zonder een besturingssysteem (bare-metal, met de parameter qbs.targetPlatform ingesteld op 'none'): KEIL (ARMCLANG, C166, C251), IAR (CR16, AVR32, M68K) En
    GCC (CR16, M68K, M32C, M32R, Super-H, V850, RISC-V, Xtensa).

  • Ondersteuning toegevoegd voor Xcode 12.0-ontwikkelomgeving voor macOS.
  • De Qt voor Android-modules zijn opgeschoond.
  • Verbeterde build-ondersteuning voor het Android-platform. Een packageType-eigenschap toegevoegd aan de Android.sdk-module om “aab” (Android App Bundles)-pakketten te maken in plaats van “apk”, evenals een aaptName-eigenschap om de nieuwe aapt2 (Android Asset Packaging Tool) te gebruiken. Ondersteuning voor het bouwen van Android-applicaties voor de ARMv5-, MIPS- en MIPS64-platforms is stopgezet.

Bron: opennet.ru

Voeg een reactie