lansarea instrumentului de construire . Aceasta este a treia lansare după ce compania Qt Company a întrerupt dezvoltarea proiectului, fiind pregătită de comunitatea interesată în continuarea dezvoltării Qbs. Pentru a construi Qbs, este necesară biblioteca Qt, deși Qbs este destinat organizării construirii oricăror proiecte. Qbs folosește o variantă simplificată a limbajului QML pentru a defini scripturile de construire a proiectului, ceea ce permite stabilirea unor reguli de construire suficient de flexibile, în care se pot integra module externe, se pot utiliza funcții JavaScript și se pot crea reguli de construire personalizate.
Limbajul de scripting utilizat în Qbs este adaptat pentru automatizarea generării și analizei scripturilor de construire în cadrul mediilor integrate de dezvoltare. În plus, Qbs nu generează fișiere make, ci controlează în mod direct, fără intermediari, cum ar fi utilitarul make, lansarea compilatoarelor și linkerelor, optimizând procesul de construire pe baza unui grafic detaliat al tuturor dependențelor. Disponibilitatea datelor inițiale despre structura și dependențele din proiect permite eficientizarea execuției operațiunilor în paralel. Pentru proiecte mari, formate dintr-un număr mare de fișiere și subdirectoare, performanța recompilării utilizând Qbs poate depăși cu mult făcând-o, recompilarea având loc aproape instantaneu și fără a face ca dezvoltatorul să piardă timp așteptând.
Amintim că, în 2018, compania Qt Company a fost decizia de a opri dezvoltarea Qbs. Qbs a fost dezvoltat ca o alternativă la qmake, dar în cele din urmă s-a decis utilizarea CMake ca principal sistem de construire pentru Qt pe termen lung. Dezvoltarea Qbs este acum continuată sub formă de proiect independent, susținut de comunitate și de dezvoltatori interesați. Infrastructura Qt Company continuă să fie utilizată pentru dezvoltare.
Principalele Qbs 1.16:
- S-a asigurat fuzionarea proprietăților de listă în modulele cu dependențe reciproce, ceea ce este important, de exemplu, în gestionarea unor steaguri precum cpp.staticLibraries;
- A fost adăugată detectarea automată a GCC și IAR pentru microcontrolerele Renesas;
- A fost adăgată suportul pentru Xcode 11.4 pe macOS;
- Funcționalitățile modulului de suport clang-cl au fost extinse;
- S-a asigurat detectarea automată a MSVC, clang-cl și MinGW în profilele unde nu este definită în mod explicit locația instrumentelor;
- A fost simplificată activarea și configurarea informațiilor de depanare instalate separat (cpp.separateDebugInformation) prin secțiunile Application și DynamicLibrary din setările proiectului;
- A fost adăugată suportul pentru Qt 5.14 pentru Android și actualizată utilitarul qbs-setup-android;
- La setările Qt.core.generateMetaTypesFile și Qt.core.metaTypesInstallDir a fost adăugat suport pentru fișiere JSON generate de utilitarul moc (Qt >= 5.15);
- A fost adăugată suportul pentru noul mecanism de declarare a tipurilor introdus în Qt 5.15 pentru QML;
- A fost adăugată configurarea ConanfileProbe pentru a simplifica integrarea Qbs cu managerul de pachete (pentru C/C++).
Sursa: opennet.ro
