The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

28.04.2015 19:15  Выпуск сборочного инструментария qbs 1.4.0, развиваемого проектом Qt

Увидел свет релиз развиваемого проектом Qt сборочного инструментария qbs 1.4.0 (Qt Build Suite). Qbs использует упрощённый вариант языка QML для определения сценариев сборки проекта, что позволяет определять достаточно гибкие правила сборки, в которых могут подключаться внешние модули, использоваться функции на JavaScript и создаваться произвольные правила сборки. В отличие от qmake, qbs не привязан к Qt и изначально рассчитан на организацию сборки любых проектов.

Используемый в qbs язык сценариев адаптирован для автоматизации генерации и разбора сценариев сборки интегрированными средами разработки. Кроме того, qbs не генерирует make-файлы, а сам, без посредников, таких как утилита make, контролирует запуск компиляторов и компоновщиков, оптимизируя процесс сборки на основе детального графа всех зависимостей. Наличие изначальных данных о структуре и зависимостях в проекте позволяет эффективно распараллеливать выполнение операций в несколько потоков. Для крупных проектов, состоящих из большого числа файлов и поддиректорий, производительность повторной пересборки с использованием qbs может опережать make в разы - пересборка выполняется почти мгновенно и не заставляет разработчика тратить время на ожидание.

В новой версии:

  • Добавлена экспериментальная поддержка платформы Android, в том числе для сборки проектов, содержащих нативный код. Специальная поддержка Qt и интеграция с Qt Creator пока отсутствует;
  • Добавлен модуль archiver для создания сжатых архивов. Данный модуль используется для организации работы компонента InstallPackage;
  • Добавлено новое свойство builtByDefault, позволяющее определить продукты подлежащие сборке по умолчанию и продукты собираемые только при явном запросе. В качестве примера подготовлено приложение AutotestRunner, предоставляющее функции похожие на "make check";
  • Файлы теперь устанавливаются в рамках процесса сборки, что позволяет создавать продукты, работающие с содержимым установочной директории.


  1. Главная ссылка к новости (http://blog.qt.io/blog/2015/04...)
  2. OpenNews: Выпуск сборочного инструментария qbs 1.3.0, развиваемого проектом Qt
  3. OpenNews: Выпуск сборочного инструментария qbs 1.2.0, развиваемого проектом Qt
  4. OpenNews: Выпуск сборочного инструментария qbs 1.1.0, развиваемого проектом Qt
  5. OpenNews: Проект Qt представил сборочный инструментарий qbs 1.0.0
  6. OpenNews: Разработчики Qt представили инструментарий для сборки проектов qbs
Лицензия: CC-BY
Тип: Программы
Ключевые слова: qbs, build
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, rob pike (?), 19:44, 28/04/2015 [ответить] [показать ветку] [···]    [к модератору]
  • +1 +/
    Тут кстати хорошая (правда хорошая!) про make вышла - http://www.nostarch.com/gnumake
     
     
  • 2.2, Аноним (-), 20:19, 28/04/2015 [^] [ответить]    [к модератору]
  • +/
    Да, полезная книга. Автору вполне можно доверять - он с make уже долгое время работает.
     
  • 1.3, anon2 (?), 20:22, 28/04/2015 [ответить] [показать ветку] [···]    [к модератору]
  • +1 +/
    >> производительность повторной пересборки с использованием qbs может опережать make в разы

    make быстр, если используется нерекурсивная система сборки - когда есть одно глобальное дерево зависимостей. Тогда время повторной пересборки крупного проекта, если ничего не менялось - менее секунды.

     
  • 1.4, anonymous (??), 20:34, 28/04/2015 [ответить] [показать ветку] [···]    [к модератору]
  • +1 +/
    >В отличие от qmake, qbs не привязан к Qt

    Враньё. Для сборки нужен qmake. Пока qtbase не вытянешь, хрен соберёшь.

     
     
  • 2.5, RazrFalcon (ok), 20:38, 28/04/2015 [^] [ответить]    [к модератору]
  • +/
    Не нужно путать привязку и зависимости.
     
     
  • 3.7, Аноним (-), 21:47, 28/04/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    > Не нужно путать привязку и зависимости.

    А в чём в данном случае разница?

     
     
  • 4.17, BSA (?), 22:44, 29/04/2015 [^] [ответить]    [к модератору]  
  • +/
    Отличия в том, что проект не обязан использовать Qt. Например, я успешно перевожу на qbs свои embedded проекты под ARM. А там не только Qt,  но и операционки даже нет.
     
  • 1.6, dismine (?), 21:10, 28/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Им кто то вообще пользуется? В интернете информации ноль. Уже 1.4, а по ощущениях 0.4 только.
     
     
  • 2.8, АнонимЪ (?), 22:20, 28/04/2015 [^] [ответить]    [к модератору]  
  • +/
    Мы в продакшене используем. Впечатления положительные.
     
  • 2.9, анонн (?), 22:52, 28/04/2015 [^] [ответить]    [к модератору]  
  • +/
    Мы юзали его, до того как перешли на Gradle :) После CMake впечатления были очень положительные но до Gradle ему ооочень далеко, а учитывая темпы развития Gradle не догонит он его никогда...
     
     
  • 3.10, Аноним (-), 01:09, 29/04/2015 [^] [ответить]    [к модератору]  
  • +/
    Подождите подождите. Gradle? на каком языке программирования написан ваш проект?
     
     
  • 4.15, D (?), 13:10, 29/04/2015 [^] [ответить]    [к модератору]  
  • +/
    Gradle по барабану какой язык проекта. Хоть асм съест. Сам gradle конечно = jvm + groovy
     
  • 3.11, Аноним (-), 01:10, 29/04/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    Учитывая темпы развития груви, гредл скоро сдохнет за ненадобностью.
     
  • 2.12, Аноним (-), 01:29, 29/04/2015 [^] [ответить]     [к модератору]  
  • +/
    Полностью согласен Документация такая что лучше бы ее не было Описаны абсолютн... весь текст скрыт [показать]
     
  • 1.13, Аноним (-), 07:38, 29/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Больше сборочных инструментов для сборки сборочных инструментов!
     
     
  • 2.14, user (??), 12:38, 29/04/2015 [^] [ответить]    [к модератору]  
  • +/
    Кстати, какие сборочные инструменты нормально понимают генерацию сразу нескольких файлов?

    Все реализации make в этом месте сделаны через задницу, хотя стандарт не запрещает сделать правильно.

     
     
  • 3.16, anon2 (?), 19:50, 29/04/2015 [^] [ответить]     [к модератору]  
  • +/
    реализация генерации сразу нескольких файлов на gnu make empty define newlin... весь текст скрыт [показать]
     
  • 2.18, zxc (??), 18:12, 30/04/2015 [^] [ответить]    [к модератору]  
  • +/
    > Больше сборочных инструментов для сборки сборочных инструментов!

    И книжек, книжек хороших побольше по 300 страниц про то как ими просто и быстро все собирать.

     
  • 1.19, Аноним (-), 19:13, 03/05/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Увы, мeртворожденное пoделие. Лучше cmake пока ничего нет.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor