Alliberament de l'eina de muntatge Qbs 2.0

S'ha presentat el llançament de l'eina de compilació Qbs 2.0. Per construir Qbs, es requereix Qt com a dependència, tot i que el mateix Qbs està dissenyat per organitzar el muntatge de qualsevol projecte. Qbs utilitza una versió simplificada del llenguatge QML per definir scripts de construcció de projectes, que us permet definir regles de compilació bastant flexibles en les quals es poden connectar mòduls externs, es poden utilitzar funcions JavaScript i es poden crear regles de compilació arbitràries.

El llenguatge de scripting utilitzat a Qbs està adaptat per automatitzar la generació i l'anàlisi de scripts de compilació per part dels IDE. A més, Qbs no genera makefiles, i ell mateix, sense intermediaris com la utilitat make, controla el llançament de compiladors i enllaçadors, optimitzant el procés de compilació basant-se en un gràfic detallat de totes les dependències. La presència de dades inicials sobre l'estructura i les dependències en el projecte us permet paral·lelitzar eficaçment l'execució d'operacions en diversos fils. Per a projectes grans que consisteixen en un gran nombre de fitxers i subdirectoris, el rendiment de reconstrucció amb Qbs pot superar el rendiment en diverses vegades: la reconstrucció és gairebé instantània i no fa que el desenvolupador passi temps esperant.

Recordem que el 2018, la companyia Qt va decidir deixar de desenvolupar Qbs. Qbs es va desenvolupar com a substitut de qmake, però finalment es va decidir utilitzar CMake com a sistema de compilació principal per a Qt a llarg termini. El desenvolupament de Qbs ha continuat ara com un projecte independent recolzat per forces de la comunitat i desenvolupadors interessats. La infraestructura de Qt Company es continua utilitzant per al desenvolupament.

Un canvi significatiu en el número de versió s'associa amb la implementació d'un nou backend de JavaScript, que va substituir QtScript, que estava obsolet a Qt 6. Es va considerar poc realista continuar mantenint QtScript per si sol a causa de les complexes vinculacions a JavaScriptCore, de manera que un auto -Se'n va triar un de suficient i compacte com a base per al nou motor de JavaScript de backend QuickJS creat per Fabrice Bellard, que va fundar els projectes QEMU i FFmpeg. El motor admet l'especificació ES2019 i supera significativament els seus homòlegs existents en rendiment (XS en un 35%, DukTape en més de dues vegades, JerryScript en tres vegades i MuJS en set vegades).

Des del punt de vista del desenvolupament dels scripts de compilació, la transició a un nou motor no hauria de comportar canvis notables. El rendiment també es mantindrà gairebé igual. De les diferències, hi ha requisits més estrictes en el nou motor per a l'ús de valors nuls, que poden revelar problemes en projectes existents que van passar desapercebuts quan s'utilitzava QtScript.

Font: opennet.ru

Afegeix comentari