wydanie narzędzi do kompilacji . To trzeci wydanie po zakończeniu współpracy z firmą Qt Company nad projektem, przygotowane przez społeczność zainteresowaną kontynuacją rozwoju Qbs. Do budowy Qbs wymagany jest Qt w zależnościach, chociaż sam Qbs jest przeznaczony do organizacji budowy wszelkich projektów. Qbs używa uproszczonej wersji języka QML do definiowania scenariuszy budowy projektu, co pozwala na ustalanie wystarczająco elastycznych zasad budowy, w których mogą być podłączane zewnętrzne moduły, używane funkcje w JavaScript i tworzone dowolne zasady budowy.
Język skryptowy używany w Qbs jest dostosowany do automatyzacji generowania i analizowania scenariuszy budowy w zintegrowanych środowiskach programistycznych. Ponadto, Qbs nie generuje plików make, a sam, bez pośredników, takich jak narzędzie make, kontroluje uruchamianie kompilatorów i linkerów, optymalizując proces budowy na podstawie szczegółowego grafu wszystkich zależności. Posiadanie początkowych danych o strukturze i zależnościach w projekcie pozwala na efektywne równoległe wykonanie operacji w kilku wątkach. Dla dużych projektów, składających się z dużej liczby plików i podkatalogów, wydajność ponownej kompilacji przy użyciu Qbs może znacznie przewyższać make — ponowna kompilacja odbywa się niemal natychmiastowo i nie zmusza programisty do marnowania czasu na oczekiwanie.
Przypomnijmy, że w 2018 roku firma Qt Company podjęła decyzję o zaprzestaniu rozwijania Qbs. Qbs rozwijał się jako zamiennik qmake, ale ostatecznie zdecydowano się na użycie CMake jako głównego systemu kompilacji dla Qt na dłuższą metę. Rozwój Qbs jest teraz kontynuowany w formie niezależnego projektu, wspieranego przez społeczność i zainteresowanych programistów. Na razie nadal korzysta się z infrastruktury Qt Company.
Podstawowe Qbs 1.16:
- Zrealizowano łączenie właściwości listowych w modułach związanych wzajemnymi zależnościami, co jest istotne, na przykład, przy przetwarzaniu takich flag jak cpp.staticLibraries;
- Dodano automatyczne wykrywanie GCC i IAR dla mikrokontrolerów Renesas;
- Dodano wsparcie dla Xcode 11.4 na macOS;
- Rozszerzono możliwości modułu wsparcia clang-cl;
- Zautomatyzowano wykrywanie MSVC, clang-cl i MinGW w profilach, gdzie lokalizacja narzędzi nie jest wyraźnie zdefiniowana;
- Ułatwiono włączenie i konfigurację oddzielnie instalowanej informacji o debugowaniu (cpp.separateDebugInformation) przez sekcje Application i DynamicLibrary w opcjach projektu;
- Dodano wsparcie dla Qt 5.14 na Androida i zaktualizowano narzędzie qbs-setup-android;
- Do ustawień Qt.core.generateMetaTypesFile i Qt.core.metaTypesInstallDir dodano wsparcie dla plików JSON generowanych przez narzędzie moc (Qt >= 5.15);
- Dodano wsparcie dla nowego mechanizmu deklaracji typów w QML wprowadzonym w Qt 5.15;
- Dodano konfigurację ConanfileProbe w celu uproszczenia integracji Qbs z menedżerem pakietów (dla C/C++). 🥇Wydanie narzędzi do budowania Qbs 1.16 | ProHoster
Źródło: opennet.ru
