Lanzamento da ferramenta de montaxe Qbs 2.0

Presentación da ferramenta de compilación Qbs 2.0. Para construír Qbs, é necesario Qt como dependencia, aínda que o propio Qbs está deseñado para organizar a montaxe de calquera proxecto. Qbs usa unha versión simplificada da linguaxe QML para definir scripts de construción de proxectos, o que lle permite definir regras de construción bastante flexibles nas que se poden conectar módulos externos, utilizar funcións JavaScript e crear regras de construción arbitrarias.

A linguaxe de scripts utilizada en Qbs está adaptada para automatizar a xeración e análise de scripts de compilación por parte dos IDE. Ademais, Qbs non xera makefiles, e por si mesmo, sen intermediarios como a utilidade make, controla o lanzamento de compiladores e enlazadores, optimizando o proceso de compilación baseándose nun gráfico detallado de todas as dependencias. A presenza de datos iniciais sobre a estrutura e as dependencias do proxecto permítelle paralelizar eficazmente a execución de operacións en varios fíos. Para proxectos grandes que consisten en un gran número de ficheiros e subdirectorios, o rendemento das reconstrucións usando Qbs pode superar en varias veces o rendemento de make - a reconstrución é case instantánea e non fai que o desenvolvedor pase tempo esperando.

Lembre que en 2018, a empresa Qt decidiu deixar de desenvolver Qbs. Qbs foi desenvolvido como un substituto de qmake, pero finalmente decidiuse usar CMake como o sistema de compilación principal para Qt a longo prazo. O desenvolvemento de Qbs continuou agora como un proxecto independente apoiado polas forzas comunitarias e os desenvolvedores interesados. A infraestrutura de Qt Company segue utilizándose para o desenvolvemento.

Un cambio significativo no número de versión está asociado coa implementación dun novo backend de JavaScript, que substituíu a QtScript, que estaba en desuso en Qt 6. Considerouse pouco realista seguir mantendo QtScript por si só debido ás complexas ligazóns a JavaScriptCore, polo que un auto -Elixiuse un suficiente e compacto como base para o novo motor JavaScript de backend QuickJS creado por Fabrice Bellard, quen fundou os proxectos QEMU e FFmpeg. O motor admite a especificación ES2019 e supera significativamente os seus homólogos existentes en rendemento (XS nun 35 %, DukTape en máis de dúas veces, JerryScript en tres veces e MuJS en sete veces).

Desde o punto de vista do desenvolvemento de scripts de compilación, a transición a un novo motor non debería levar a cambios notables. O rendemento tamén permanecerá aproximadamente igual. Das diferenzas, hai requisitos máis estritos no novo motor para o uso de valores nulos, o que pode revelar problemas en proxectos existentes que pasaron desapercibidos ao usar QtScript.

Fonte: opennet.ru

Engadir un comentario