Kumpanija Qt
Fil-futur qarib, huwa mistenni li jinħoloq proġett indipendenti biex ikompli l-iżvilupp ta 'Qbs mill-komunità, li d-destin tiegħu se jiddependi fuq l-interess fis-sistema ta' assemblaġġ inkwistjoni minn żviluppaturi indipendenti. Qt Company tieqaf taħdem fuq Qbs minħabba l-ħtieġa għal investiment addizzjonali u spejjeż għoljin għall-promozzjoni tal-Qbs.
Ejja nfakkru li biex tibni Qbs, Qt huwa meħtieġ bħala dipendenza, għalkemm Qbs innifsu huwa ddisinjat biex jorganizza l-assemblaġġ ta 'kwalunkwe proġett. Qbs juża verżjoni simplifikata tal-lingwa QML biex jiddefinixxi skripts tal-bini tal-proġett, li jippermettilek tiddefinixxi regoli tal-bini pjuttost flessibbli li jistgħu jgħaqqdu moduli esterni, jużaw funzjonijiet JavaScript, u joħolqu regoli tal-bini tad-dwana.
Qbs ma jiġġenerax makefiles u jikkontrolla b'mod indipendenti t-tnedija ta 'kompilaturi u linkers, u jottimizza l-proċess tal-bini bbażat fuq grafika dettaljata tad-dipendenzi kollha. Il-preżenza tad-dejta inizjali dwar l-istruttura u d-dipendenzi fil-proġett tippermettilek li titqabbel b'mod effettiv l-eżekuzzjoni ta 'operazzjonijiet f'diversi ħjut.
Innovazzjonijiet ewlenin f'Qbs 1.13:
- Miżjud il-kapaċità li tuża moduli pkg-config fi proġetti li jużaw l-istess mekkaniżmu ta 'proċessar tad-dipendenza li jintuża għall-moduli Qbs. Pereżempju, jekk is-sistema tiegħek għandha pakkett għall-bini ta' OpenSSL ibbażat fuq pkg-config, biex tużah fi proġett Qbs, żid biss 'Depends { name: "openssl" }';
- Sejbien awtomatiku implimentat ta 'moduli Qt disponibbli. L-iżviluppaturi m'għadhomx jeħtieġu li joħolqu profil b'mogħdijiet tal-moduli bl-użu tal-kmand setup-qt; il-moduli Qt kollha speċifikati fid-dipendenzi se jiġu kkonfigurati awtomatikament;
- Għodod miżjuda biex jikkontrollaw in-numru ta 'kompiti ta' assemblaġġ li jaħdmu b'mod parallel fil-livell ta 'kmandi individwali. Pereżempju, il-linking joħloq tagħbija I/O kbira u jikkonsma ammont sinifikanti ta 'RAM, għalhekk il-linker jeħtieġ settings tal-istartjar differenti mill-kompilatur. Settings separati issa jistgħu jiġu stabbiliti bl-użu tal-kmand “qbs —job-limits linker:2,compiler:8”;
- Saru bidliet fil-lingwa tal-iskript. Ir-regoli issa jistgħu jiġu definiti mingħajr ma jiġi speċifikat stub file għall-output, u mhux meħtieġ li tintuża d-direttiva "import qbs" fil-bidu tal-fajls tal-proġett. Proprjetajiet ġodda install u installDir ġew miżjuda mal-Applikazzjoni, DynamicLibrary u StaticLibrary elementi għal installazzjoni aktar konvenjenti ta 'fajls eżekutibbli;
- Appoġġ miżjud għall-iskannjar rikorsiv tal-iskripts tal-linker
GNU linker; - Għal C++, il-proprjetà cpp.linkerVariant ġiet implimentata biex tisforza l-użu tal-linkers ld.gold, ld.bfd jew lld;
- Qt jintroduċi proprjetà Qt.core.enableBigResources għall-ħolqien ta 'riżorsi kbar Qt
- Minflok l-element AndroidApk skadut, huwa propost li jintuża t-tip ta 'Applikazzjoni ġeneriku;
- Miżjud modulu għall-ħolqien ta 'testijiet ibbażati fuq l-awtotest;
- Modulu texttemplate miżjud b'kapaċitajiet simili għal QMAKE_SUBSTITUTES f'qmake;
- Żid l-appoġġ inizjali għall-format tal-Protocol Buffers għal C++ u Objective-C.
Sors: opennet.ru