Veröffentlichung des Build-Tools Qbs 1.20

Die Veröffentlichung des Build-Tools Qbs 1.20 wurde vorgestellt. Dies ist die siebte Veröffentlichung nach dem RĂŒckzug der Qt Company aus der Projektentwicklung, erstellt von der Community, die an der Fortsetzung der Qbs-Entwicklung interessiert ist. FĂŒr den Build von Qbs ist Qt in den AbhĂ€ngigkeiten erforderlich, obwohl Qbs darauf ausgelegt ist, den Build beliebiger Projekte zu organisieren. Qbs verwendet eine vereinfachte Variante von QML zur Definition von Build-Skripten, die es ermöglicht, ausreichend flexible Build-Regeln festzulegen, in denen externe Module eingebunden, JavaScript-Funktionen verwendet und benutzerdefinierte Build-Regeln erstellt werden können.

Die in Qbs verwendete Skriptsprache ist auf die Automatisierung der Generierung und Analyse von Build-Skripten in integrierten Entwicklungsumgebungen (IDEs) angepasst. DarĂŒber hinaus generiert Qbs keine Makefiles, sondern steuert direkt, ohne Zwischeninstanzen wie die Make-Utility, den Start von Compilern und Linkern und optimiert den Build-Prozess basierend auf einem detaillierten Graphen aller AbhĂ€ngigkeiten. Das Vorhandensein von Ausgangsdaten zur Struktur und zu den AbhĂ€ngigkeiten im Projekt ermöglicht eine effiziente Parallelisierung von AblĂ€ufen in mehreren Threads. FĂŒr große Projekte mit einer Vielzahl von Dateien und Unterverzeichnissen kann die Leistung bei der erneuten Erstellung mit Qbs um ein Vielfaches schneller sein als bei Make – die erneute Erstellung erfolgt nahezu augenblicklich und zwingt den Entwickler nicht, Zeit mit Warten zu verbringen.

Erinnern wir uns, dass die Qt Company im Jahr 2018 beschlossen hat, die Entwicklung von Qbs einzustellen. Qbs wurde als Ersatz fĂŒr qmake entwickelt, doch letztendlich wurde entschieden, CMake als primĂ€res Build-System fĂŒr Qt in der langfristigen Perspektive zu verwenden. Die Entwicklung von Qbs wird nun in Form eines unabhĂ€ngigen Projekts fortgesetzt, das von der Community und interessierten Entwicklern unterstĂŒtzt wird. FĂŒr die Entwicklung wird vorerst weiterhin die Infrastruktur der Qt Company genutzt.

Wesentliche Neuerungen in Qbs 1.20:

  • VollstĂ€ndige UnterstĂŒtzung des Qt 6-Frameworks, einschließlich der Version Qt 6.2.
  • Das Modul QtScript wurde auf C++17 aktualisiert und portiert, das nicht mehr mit Qt 6 geliefert wird und jetzt Teil von Qbs ist.
  • Bei einem Build mit einem anderen Satz von Eigenschaften wird eine Liste der alten Eigenschaften ausgegeben.
  • Ein Befehl zum HinzufĂŒgen des gesamten Profils wurde zu qbs-config hinzugefĂŒgt, wodurch separate HinzufĂŒgungen von Eigenschaften entfĂ€llt und der Start bei mehreren Android SDKs erheblich beschleunigt wird.
  • Ein Problem mit der fehlerhaften Verarbeitung der Aktualisierungszeit von Dateien auf der FreeBSD-Plattform wurde behoben.
  • Die UnterstĂŒtzung von C/C++ wurde verbessert. UnterstĂŒtzung fĂŒr die Compiler COSMIC (COLDFIRE/M68K, HCS08, HCS12, STM8 und STM32) und fĂŒr die Digital Mars-Toolchain wurde hinzugefĂŒgt. FĂŒr den MSVC-Compiler wurde die Eigenschaft cpp.enableCxxLanguageMacro implementiert und die UnterstĂŒtzung fĂŒr den Wert 'c++20' in cpp.cxxLanguageVersion hinzugefĂŒgt.
  • FĂŒr die Android-Plattform wurde die UnterstĂŒtzung fĂŒr die Verwendung des Dex-Compilers d8 anstelle von dx durch das Setzen der Eigenschaft Android.sdk.dexCompilerName implementiert. Die UnterstĂŒtzung von Ministro, einem Programm zur GewĂ€hrleistung der Funktion von Qt-Bibliotheken im Android-System, wurde eingestellt. Das Tool zur Paketerstellung wurde von aapt auf aapt2 (Android Asset Packaging Tool) aktualisiert.

Quelle: opennet.ru

60GB SSD 8Gb DDR4