uvolnění montážního nářadí Toto je třetí vydání od doby, kdy se společnost Qt Company stáhla z vývoje projektu. Bylo připraveno komunitou, která měla zájem o pokračování ve vývoji Qbs. Qbs vyžaduje Qt jako závislost pro sestavování, ačkoli samotný Qbs je navržen tak, aby zvládl sestavování jakéhokoli projektu. Qbs používá zjednodušenou verzi jazyka QML k definování skriptů pro sestavování projektů, což umožňuje definovat poměrně flexibilní pravidla sestavování, která mohou zahrnovat externí moduly, používat funkce JavaScriptu a vytvářet vlastní pravidla sestavování.
Skriptovací jazyk používaný v Qbs je přizpůsoben k automatizaci generování a analýzy sestavení skriptů integrovanými vývojovými prostředími. Qbs navíc negeneruje makefile, ale sám bez prostředníků, jako je utilita make, řídí spouštění kompilátorů a linkerů, optimalizuje proces sestavení na základě podrobného grafu všech závislostí. Přítomnost počátečních dat o struktuře a závislostech v projektu umožňuje efektivně paralelizovat provádění operací v několika vláknech. U velkých projektů sestávajících z velkého množství souborů a podadresářů může být výkon přestavby pomocí Qbs několikanásobně rychlejší než make - přestavba je provedena téměř okamžitě a nenutí vývojáře ztrácet čas čekáním.
Připomeňme, že v roce 2018 byla Qt Company rozhodnutí zastavit vývoj Qbs. Qbs byl vyvinut jako náhrada za qmake, ale nakonec bylo rozhodnuto použít CMake jako hlavní sestavovací systém pro Qt z dlouhodobého hlediska. Vývoj Qbs nyní pokračuje jako nezávislý projekt podporovaný komunitou a zainteresovanými vývojáři. Infrastruktura společnosti Qt je nadále využívána pro vývoj.
hlavní Qbs 1.16:
- Sloučení vlastností seznamu v modulech se vzájemnými závislostmi je nyní možné, což je důležité například při práci s příznaky, jako je cpp.staticLibraries;
- Přidána automatická detekce GCC a IAR pro mikrokontroléry Renesas;
- Přidána podpora pro Xcode 11.4 macOS;
- Možnosti podpůrného modulu clang-cl byly rozšířeny;
- V profilech, kde není explicitně definováno umístění toolchainu, je k dispozici automatická detekce MSVC, clang-cl a MinGW;
- Zjednodušené povolení a konfigurace samostatně instalovaných ladicích informací (cpp.separateDebugInformation) prostřednictvím sekcí Application a DynamicLibrary v nastavení projektu;
- Přidána podpora pro Qt 5.14 pro Android a utilita qbs-setup-android byla aktualizována;
- Do nastavení Qt.core.generateMetaTypesFile a Qt.core.metaTypesInstallDir byla přidána podpora pro soubory JSON generované utilitou moc (Qt >= 5.15);
- Přidána podpora pro nový mechanismus deklarace typů pro QML, který byl zaveden v Qt 5.15;
- Přidáno nastavení ConanfileProbe pro zjednodušení integrace Qbs se správcem balíčků. (pro C/C++).
Zdroj: opennet.ru
