Készítői eszközkészlet kiadása . Ez a negyedik kiadás, miután a Qt Company abbahagyta a projekt fejlesztését, a közösség erőfeszítéseivel, akik érdekeltek a Qbs fejlesztésének folytatásában. A Qbs összeállításához a Qt részeként szükséges, bár a Qbs bármilyen projekt összeállítására van tervezve. A Qbs egyszerűsített QML nyelvet használ a projekt összeállítási forgatókönyveinek meghatározására, ami lehetővé teszi elég rugalmas összeállítási szabályok definiálását, amelyekhez külső modulok csatlakoztathatók, JavaScript funkciók használhatók, és önálló összeállítási szabályok hozhatók létre.
A Qbs-ben használt szkriptnyelv alkalmazkodik a fejlesztői környezetekben végzett összeszerelési szkriptek automatikus generálásához és elemzéséhez. Továbbá, a Qbs nem generál make-fájlokat, hanem közvetlenül, közvetítők, például a make eszköz nélkül kontrollálja a fordítók és linker-ek indítását, optimalizálva az összeszerelési folyamatot az összes függőség részletes gráfjának alapján. Az eredeti adatok rendelkezésre állása a projekt struktúrájáról és függőségeiről lehetővé teszi a műveletek párhuzamos végrehajtását több szálban. Nagy projektek esetén, amelyek nagy számú fájlból és alkönyvtárból állnak, a Qbs-szel végzett újraelkészítés teljesítménye sokszorosan felülmúlja a make-t – az újraelkészítés szinte azonnal végbemegy, és nem késlelteti a fejlesztőt.
Emlékeztetünk arra, hogy 2018-ban a Qt Company döntést hozott a Qbs fejlesztésének leállításáról. A Qbs a qmake helyettesítéseként fejlődött, de végül úgy döntöttek, hogy a CMake-et használják a Qt hosszú távú összeállítási rendszerének. A Qbs fejlesztése most egy független projekt formájában folytatódik, amelyet a közösség és az érdeklődő fejlesztők támogatnak. A fejlesztéshez továbbra is a Qt Company infrastruktúrája használatos.
Fő Qbs 1.17:
- Bevezetésre került az alapvető támogatás .
- Hozzáadva a capnp modul az adatsorozási protokoll használatához C++ alkalmazásokban.
- a product és project változók megadásának lehetősége a moduleProvider tulajdonság definíciójának jobb oldalán (például: «moduleProviders.mygenerator.chooseLettersFrom: project.beginning»).
- Hozzáadva a C/C++ projektek összeállításának támogatása operációs rendszer nélküli (bare-metal) hardver felett (qbs.targetPlatform beállításával ‘none’ értékre): KEIL (ARMCLANG, C166, C251), IAR (CR16, AVR32, M68K) és
GCC (CR16, M68K, M32C, M32R, Super-H, V850, RISC-V, Xtensa). - Hozzáadva az Xcode 12.0 fejlesztői környezet támogatása macOS-hoz.
- A «Qt for Android» modulok tisztítása megtörtént.
- Javították az Android platformra történő összeállítás támogatását. Az Android.sdk modulhoz hozzáadott a packageType tulajdonság az «aab» (Android App Bundles) csomagok létrehozásához az «apk» helyett, valamint az aaptName tulajdonság a új aapt2 (Android Asset Packaging Tool) használatához. Megszűnt az Android alkalmazások összeállítása ARMv5, MIPS és MIPS64 platformokra.
Forrás: opennet.ru
