Qbs 1.16 összeszerelő szerszám kioldó

Által benyújtott összeszerelő szerszámok gyártása Qbs 1.16. Ez a harmadik kiadás azóta, hogy a Qt Company kilépett a projekt fejlesztéséből, amelyet a Qbs fejlesztésének folytatásában érdekelt közösség készített elő. A Qbs felépítéséhez Qt szükséges a függőségek között, bár magát a Qbs-t arra tervezték, hogy megszervezze bármely projekt összeállítását. A Qbs a QML nyelv egyszerűsített változatát használja a projektfelépítési szkriptek meghatározásához, amely lehetővé teszi meglehetősen rugalmas összeállítási szabályok meghatározását, amelyek külső modulokat csatlakoztathatnak, JavaScript-függvényeket használhatnak, és egyéni összeállítási szabályokat hozhatnak létre.

A Qbs-ben használt szkriptnyelvet úgy alakították ki, hogy automatizálja a build szkriptek IDE-k általi generálását és elemzését. Ezenkívül a Qbs nem hoz létre makefile-okat, és maga, közvetítők, például a make segédprogram nélkül, vezérli a fordítók és linkerek elindítását, optimalizálva az összeállítási folyamatot az összes függőség részletes grafikonja alapján. A kezdeti adatok jelenléte a struktúráról és a függőségekről a projektben lehetővé teszi a műveletek végrehajtásának hatékony párhuzamosítását több szálban. A nagyszámú fájlból és alkönyvtárból álló nagy projektek esetében a Qbs használatával végzett újraépítési teljesítmény többszörösen felülmúlhatja a make-t – az újraépítés szinte azonnal megtörténik, és nem kényszeríti a fejlesztőt a várakozásra.

Emlékezzünk arra, hogy 2018-ban a Qt Társaság volt kapott döntés a Qbs fejlesztésének leállításáról. A Qbs-t a qmake helyettesítésére fejlesztették ki, de végül úgy döntöttek, hogy hosszú távon a CMake-et használják a Qt fő összeállítási rendszereként. A Qbs fejlesztése immár független projektként folytatódott, közösségi erők és érdeklődő fejlesztők támogatásával. Továbbra is a Qt Company infrastruktúráját használják fejlesztésre.

A főbb innovációk Qbs 1.16:

  • A kölcsönös függőségekkel összekapcsolt modulokban biztosított a listatulajdonságok összevonása, ami fontos például olyan flagek feldolgozásakor, mint a cpp.staticLibraries;
  • Hozzáadott GCC és IAR automatikus észlelése Renesas mikrokontrollerekhez;
  • Hozzáadott támogatás az Xcode 11.4-hez macOS rendszeren;
  • A clang-cl támogatási modul képességei kibővültek;
  • Az MSVC, a clang-cl és a MinGW automatikus felismerése olyan profilokban, ahol az eszközkészlet helye nincs kifejezetten meghatározva;
  • Egyszerűsítettük a külön telepített hibakeresési információk (cpp.separateDebugInformation) engedélyezését és konfigurálását a projektparaméterek Application és DynamicLibrary szakaszán keresztül;
  • Támogatás hozzáadva a Qt 5.14-hez Androidhoz, és frissítve lett a qbs-setup-android segédprogram;
  • A moc segédprogram által generált JSON-fájlok támogatása (Qt >= 5.15) hozzáadva a Qt.core.generateMetaTypesFile és Qt.core.metaTypesInstallDir beállításokhoz;
  • Támogatás hozzáadva a Qt 5.15-ben bevezetett új QML típusdeklarációs mechanizmushoz;
  • ConanfileProbe-beállítás hozzáadva a Qbs csomagkezelővel való integrációjának egyszerűsítésére Conan (C/C++ esetén).

Forrás: opennet.ru

Hozzászólás