Lançada a versão final do kit de ferramentas de construção Qbs

Empresa Qt Company publicou ferramentas de construção Qbs 1.13 (Qt Build Suite). Esta é a versão mais recente do Qbs, desenvolvida pela Qt Company. Vale lembrar que anteriormente houve decidiu uma decisão de interromper o desenvolvimento do Qbs. O Qbs foi criado como uma substituição ao qmake, mas, em última análise, decidiu-se usar o CMake como o sistema de construção principal para o Qt a longo prazo.

Em breve, espera-se a criação de um projeto independente para continuar o desenvolvimento do Qbs pela comunidade, cujo futuro dependerá do interesse dos desenvolvedores independentes na referida sistema de construção. A Qt Company está encerrando seu trabalho no Qbs devido à necessidade de investimentos adicionais e altos custos de promoção do Qbs.

Vale lembrar que, para construir o Qbs, a Qt é necessária como uma dependência, embora o próprio Qbs tenha como objetivo organizar a construção de qualquer projeto. O Qbs usa uma versão simplificada da linguagem QML para definir os scripts de construção do projeto, o que permite estabelecer regras de construção flexíveis, nas quais módulos externos podem ser conectados, funções em JavaScript podem ser utilizadas e regras de construção arbitrárias podem ser criadas.
O Qbs não gera arquivos make e controla por conta própria a execução de compiladores e ligadores, otimizando o processo de construção com base em um gráfico detalhado de todas as dependências. A presença de dados iniciais sobre a estrutura e as dependências do projeto permite paralelizar efetivamente a execução de operações em vários threads.

Principais novidades do Qbs 1.13:

  • Foi adicionada a possibilidade de usar módulos pkg-config em projetos, utilizando o mesmo mecanismo de tratamento de dependências aplicado aos módulos Qbs. Por exemplo, com um pacote para compilar o OpenSSL baseado em pkg-config presente no sistema, para utilizá-lo no projeto Qbs, basta adicionar ‘Depends { name: "openssl" };’
  • Foi implementada a detecção automática de módulos Qt disponíveis. Os desenvolvedores não precisam mais criar um perfil com caminhos para os módulos usando o comando setup-qt, todos os módulos Qt especificados nas dependências serão configurados automaticamente;
  • Adicionadas ferramentas para controlar o número de tarefas de construção paralelas no nível de equipes individuais. Por exemplo, ao executar a vinculação, cria-se uma grande carga de I/O e consome-se uma quantidade significativa de RAM, portanto o vinculador exige diferentes configurações de execução em relação ao compilador. As configurações separadas agora podem ser definidas com o comando "qbs --job-limits linker:2,compiler:8";
  • Alterações foram feitas na linguagem de scripts. As regras agora podem ser definidas sem a necessidade de especificar um arquivo de substituição para a saída, e no início dos arquivos de projetos não é mais obrigatório usar a diretiva "import qbs". Os elementos Application, DynamicLibrary e StaticLibrary receberam novas propriedades install e installDir para facilitar a instalação de arquivos executáveis;
  • Adicionado suporte para escaneamento recursivo de scripts do vinculador
    GNU linker;
  • Para a linguagem C++, a propriedade cpp.linkerVariant foi implementada para forçar o uso dos vinculadores ld.gold, ld.bfd ou lld;
  • Para Qt, apresentada a propriedade Qt.core.enableBigResources para criar grandes recursos Qt
  • Em vez do elemento desatualizado AndroidApk, recomenda-se usar o tipo geral Application;
  • Adicionado um módulo para criar testes baseados em autotest;
  • Adicionado o módulo texttemplate com funcionalidades semelhantes ao QMAKE_SUBSTITUTES em qmake;
  • Adicionado suporte inicial para o formato Protocol Buffers para C++ e Objective-C.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster