Доступен новый выпуск развиваемого проектом Qt сборочного инструментария qbs (Qt Build Suite). Qbs использует упрощённый вариант языка QML для определения сценариев сборки проекта, что позволяет определять достаточно гибкие правила сборки, в которых могут подключаться внешние модули, использоваться функции на JavaScript и создаваться произвольные правила сборки. В отличие от qmake, qbs не привязан к Qt и изначально рассчитан на организацию сборки любых проектов.
Используемый в qbs язык сценариев адаптирован для автоматизации генерации и разбора сценариев сборки интегрированными средами разработки. Кроме того, qbs не генерирует make-файлы, а сам без посредников, таких как утилита make, контролирует запуск компиляторов и компоновщиков, оптимизируя процесс сборки на основе детального графа всех зависимостей. Наличие изначальных данных о структуре и зависимостях в проекте позволяет эффективно распараллеливать выполнение операций в несколько потоков. Для крупных проектов, состоящих из большого числа файлов и поддиректорий, производительность повторной пересборки с использованием qbs может опережать make в разы - пересборка выполняется почти мгновенно и не заставляет разработчика тратить время на ожидание.
В новой версии:
- Поддержка вложенных проектов и возможность встраивания одного проекта в другой;
- Существенно расширены средства отслеживания изменений. Учтены дополнительные факторы, которые могут потребовать пересборки частей проекта или, наоборот, сигнализируют об отсутствии необходимости пересборки.
- Улучшены средства диагностики ошибок, таких как синтаксические ошибки в файлах проекта и отсутствие необходимых сведений в профиле. Увеличена информативность сообщений об ошибках;
- API расширен для предоставления большей информации в интегрированную среду разработки, что позволило улучшить поддержку qbs-проектов в грядущем выпуске Qt Creator 3.0;
- Добавлена большая порция новой документации, устранены белые пятна в описании языка определения параметров проекта.
- В состав включён графический интерфейс для редактирования профиля проекта и изменения настроек.