Veröffentlichung des Build-Tools Qbs 1.16

Vorstellung Veröffentlichung des Build-Tools Qbs 1.16. Dies ist die dritte Ausgabe, seit die Qt Company sich aus der Entwicklung des Projekts zurückgezogen hat, vorbereitet von der Gemeinschaft, die an der Fortsetzung der Qbs-Entwicklung interessiert ist. Um Qbs zu bauen, benötigt man Qt in den Abhängigkeiten, obwohl Qbs selbst darauf ausgelegt ist, den Bau beliebiger Projekte zu organisieren. Qbs verwendet eine vereinfachte Version der QML-Sprache zur Definition von Build-Scripts, was flexible Build-Regeln ermöglicht, bei denen externe Module eingebunden, JavaScript-Funktionen genutzt und eigene 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.

Wir erinnern daran, dass die Qt Company im Jahr 2018 wurde beschlossen, die Entscheidung getroffen hat, die Entwicklung von Qbs einzustellen. Qbs entwickelte sich als Ersatz für qmake, aber letztendlich wurde beschlossen, CMake als das primäre Build-System für Qt auf lange Sicht zu verwenden. Die Entwicklung von Qbs wird nun als unabhängiges Projekt fortgesetzt, das von der Gemeinschaft und interessierten Entwicklern unterstützt wird. Die Infrastruktur der Qt Company wird weiterhin für die Entwicklung genutzt.

Haupt- Neuheiten Qbs 1.16:

  • Die Zusammenführung von Listen-Eigenschaften in Modulen mit gegenseitigen Abhängigkeiten wurde sichergestellt, was zum Beispiel bei der Verarbeitung solcher Flags wie cpp.staticLibraries wichtig ist;
  • Automatische Erkennung von GCC und IAR für Renesas-Mikrocontroller hinzugefügt;
  • Unterstützung für Xcode 11.4 in macOS hinzugefügt;
  • Die Funktionalität des clang-cl-Unterstützungsmoduls wurde erweitert;
  • Automatische Erkennung von MSVC, clang-cl und MinGW in Profilen, in denen der Standort der Toolchain nicht explizit definiert ist;
  • Die Einbeziehung und Konfiguration von separat installierten Debug-Informationen (cpp.separateDebugInformation) wurde über die Sektionen Application und DynamicLibrary in den Projekteinstellungen vereinfacht;
  • Unterstützung für Qt 5.14 für Android hinzugefügt und das Tool qbs-setup-android aktualisiert;
  • Die Einstellungen Qt.core.generateMetaTypesFile und Qt.core.metaTypesInstallDir unterstützen jetzt JSON-Dateien, die vom Tool moc generiert werden (Qt >= 5.15);
  • Unterstützung für den in Qt 5.15 eingeführten neuen Typdeklarierungsmechanismus für QML hinzugefügt;
  • Konfiguration ConanfileProbe zur Vereinfachung der Integration von Qbs mit dem Paketmanager hinzugefügt Conan (für C/C++).

Quelle: opennet.ru

60GB SSD 8Gb DDR4