Pull to refresh

Qt Build System: спасательный круг для сборки

Reading time 10 min
Views 46K
Qt *

Примечание(17.06.2013): синтаксис примеров в статье не соответствует последним версиям. Сверяйтесь с документацией. Также в марте был выпущен Qt Creator 2.7 с поддержкой QBS.
Не так давно команда разработчиков Qt представила новую систему сборки — QBS. Разумеется, основной реакцией было «Да чем вас QMAKE не устраивал», «Просто адаптируйте CMAKE», «Ещё одна система сборки [xkcd, стандарты]». Обещанные преимущества новой системы: гибкость, понятный синтаксис для всех разработчиков (QML — javascript-подобный декларативный язык), скорость билдов (чистых и инкрементальных), а также лёгкая расширяемость.
Всё это мы где-то уже слышали, поэтому в данной статье мы попытаемся разобраться, как разработчики пришли к этой системе, рассмотрим простейшие примеры, изучим основные конструкции и посмотрим, какая поддержка на уровне IDE присутствует на настоящий момент.
Let's go!
Total votes 47: ↑47 and ↓0 +47
Comments 49

Qt Creator 2.7: QBS менеджер проектов под капотом

Reading time 4 min
Views 12K
Programming *Qt *
Приветствую, друзья! В начале февраля была анонсирована IDE Qt Creator 2.7 beta, и вот 21 марта был представлен релиз 2.7.0.
Итак, из заметных изменений в новом релизе были:
  • Улучшенная поддержка интрументариев (Kits);
  • Дальнейшая поддержка С++11;
  • Изменения в QML и Qt Quick2.

Множество мелких изменений таких как поддержка слияния для git плагина, улучшения в отладчике, но в целом релиз не революционный, а эволюционный.
Знаете, я не буду подробно расписывать все изменения, их можно прочитать в пресс-релизе.
Одно для меня заметное новшество — появление в основой ветке поддержки QBS плагина. О системе qbs я писал ранее на хабре.С тех пор утекло много воды, и кто-то мог подумать что проект заглох, но нет же, стройка коммунизма идет ударными темпами, и я постараюсь дать краткий обзор некоторых изменений.

Что же там было, пока меня не было?
Total votes 20: ↑20 and ↓0 +20
Comments 1

Вышел QBS 1.0.0

Reading time 1 min
Views 14K
Qt *
Translation
Проект QBS достиг той стадии развития, при которой позволяет без затруднений собирать проекты уровня Qt Creator. Поэтому проект заслуживает тот номер версии, который отражал бы его пользу для большого количества внешних пользователей.
Зачем использовать QBS?
Total votes 24: ↑22 and ↓2 +20
Comments 35

Qbs: Шаблон настольного приложения

Reading time 9 min
Views 4.2K
Programming *Qt *
Tutorial
Sandbox
Введение

Давным давно, когда Qbs только вышла, я начинал писать эту статью, но так её и не закончил… Кажется, пришло время ее дописать. С тех пор многое изменилось, у Qbs наконец-то появилась документация, но примеров (к сожалению) в ней по-прежнему не так много. В этой статье я расскажу как написать шаблон (почти) полноценного десктопного приложения с использованием Qt.Widgets. По-хорошему, было бы неплохо сделать это на чистом C++, но я слишком ленив, чтобы сделать тестовый UI с помощью нативного АПИ под 3 платформы. Для примера я написал простое приложение ("рыбу"), состоящее из основного приложения, библиотеки и плагина, которое мы и будем разбирать


Кого заинтересовало, добро пожаловать под кат.

Читать дальше →
Total votes 2: ↑2 and ↓0 +2
Comments 6

Программируем микроконтроллеры stm32 при помощи QtCreator

Reading time 4 min
Views 66K
Qt *C *

Как-то так незаметно получилось, что программист, который разрабатывал нам прошивку для микроконтроллера, стал банально не успевать и в некоторые моменты я начинал перехватывать инициативу и самостоятельно браться за исправление ошибок.
Разработка велась в среде IAR, и многие согласятся со мной, что по сравнению с разработкой в QtCreator'е это боль и страдание.
В какой-то момент мы решили, что быстрее нанять нового программиста и вместе с ним заново переписать прошивку контроллера stm32, так, как я к этому моменту уже немного сам смыслил в их программировании и к тому же обнаружил, что QtCreator умеет отладку на голом железе (плагин BareMetal), я решил принять в этом активное участие.
Здесь я хочу поделиться шаблоном проекта для stm32f407 от Terra Electronica и рассказать об особенностях его настройки.
Читать дальше →
Total votes 39: ↑37 and ↓2 +35
Comments 36

Программируем микроконтроллеры в QtCreator

Reading time 9 min
Views 24K
Qt *
Tutorial


Почему-то в интернете мало документации про qbs, и я решил немного исправить эту ситуацию. Попробую описать в виде повествования, что необходимо сделать, что бы в QtCreator можно было компилировать (и не только) что угодно под что угодно.
Читать дальше →
Total votes 27: ↑27 and ↓0 +27
Comments 25

[UPD]Программирование микроконтроллеров 1986ВЕ91Т в Qt Creator

Reading time 4 min
Views 19K
Programming *
Sandbox
Хочу показать, как можно писать код и собирать hex-файлы для отечественных микроконтроллеров компании «Миландр» в удобной среде Qt Creator. Обычно для этих средств используются другие среды разработки, но с появлением системы QBS все несколько поменялось.
Читать дальше →
Total votes 19: ↑17 and ↓2 +15
Comments 4

Шаблон для быстрого старта на Arduino Due в QtCreator

Reading time 3 min
Views 24K
C++ *Qt *
Sandbox
Вот уже 3-й год как я нарадоваться не могу на Qt. В нем нахожу только достоинства. Он позволяет почти все. А что не позволяет, но очень надо — можно добавить и пользоваться. Так получилось и в этот раз.

image

Предыстория

Почему-то у меня к Arduino было отношение как к игрушке. До тех пор, пока не набрел на Arduino Due. Зацепила строчка в описании к модулю, что он построен на контроллере ATSAM3X8E (ядро Cortex M3). Дело в том, что с данным контроллером (вернее, с его младшей версией) я знаком не понаслышке.

Второе — и это заставило его уже купить — это цена. У меня есть опыт разработки железа на похожем контроллере (разрабатывал автомобильный трекер), и этот опыт настойчиво зашептал, что цена за модуль с доставкой в 15$ при стоимости только контроллера на Диджикее в 12$ — это очень выгодно. Бонусом шел интегрированный источник питания c диапазоном входного напряжения от 18В до 7В, 2 USB (Programming и Native).
Читать дальше →
Total votes 19: ↑19 and ↓0 +19
Comments 6

Катаем «смоляной шарик» или создание собственных правил сборки с помощью Qbs

Reading time 14 min
Views 7.6K
Qt *Build automation *
Qbs (Qt Build System) — система сборки, позволяющая описывать процесс сборки проектов на простом языке QML (javascript-подобный декларативный язык), ускоряющий процесс сборки продуктов за счет построения подробного графа зависимостей. Хоть эта система и создана разработчиками Qt, но она жестко не привязана к Qt и позволяет собирать любые продукты, для любых языков программирования и даже использоваться не для программирования, а например для администрирования. Как заявлено в официальной документации:
A product is the target of a build process, typically an application, library or maybe a tar ball

Сегодня и рассмотрим процесс создания своих продуктов. Поехали…
Читать дальше →
Total votes 18: ↑18 and ↓0 +18
Comments 54

Обзор возможностей Qt Creator 4.10 и QBS 1.14 для программирования микроконтроллеров

Reading time 6 min
Views 5.4K
Qt *Programming microcontrollers *
Sandbox
Здравствуйте, товарищи программисты «железячники» и все кто им сочувствует. Я хотел бы представить небольшой обзор возможностей IDE Qt Creator в связке с системой сборки QBS в части программирования микроконтроллеров. Кому эта тема интересна, добро пожатовать по кат.
Читать дальше →
Total votes 13: ↑12 and ↓1 +11
Comments 6

QBS шаблон для программирования микроконтроллеров в QtCreator на примере контроллеров Миландр

Reading time 4 min
Views 7.1K
Qt *Programming microcontrollers *
Не так давно помогал с освоением микроконтроллеров одной малоизвестной фирмы — Миландр. Официальная среда разработки Keil. Мне она не приглянулась, но процессор на архитектуре ещё одной малоизвестной фирмы ARM, а значит под него есть gcc компилятор. А где есть gcc, там можно и QtCreator применить в качестве IDE.

метал керамические корпуса прекрасны
Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Comments 13

Обзор возможностей Qt Creator 4.11 и QBS 1.15 для программирования микроконтроллеров

Reading time 4 min
Views 4.5K
Qt *Programming microcontrollers *
Здравствуйте, товарищи программисты «железячники» и все кто им сочувствует. Я хотел бы продолжить обзор возможностей IDE Qt Creator в связке с системой сборки QBS в части программирования микроконтроллеров.

Ранее я уже писал про улучшения в предыдущих версиях QtC 4.10 и QBS 1.14.

Кому эта тема интересна, добро пожаловать по кат.
Читать дальше →
Total votes 4: ↑4 and ↓0 +4
Comments 14

Обзор возможностей Qt Creator 4.12 и QBS 1.16 для программирования микроконтроллеров

Reading time 4 min
Views 3.8K
Qt *Programming microcontrollers *
Здравствуйте, товарищи программисты «железячники» и все кто им сочувствует. Я хотел бы продолжить обзор возможностей IDE Qt Creator в связке с системой сборки QBS в части программирования микроконтроллеров.

Ранее я уже писал про улучшения в предыдущих версиях QtC 4.10 и QBS 1.14, QtC 4.11 и QBS 1.15.

Кому эта тема интересна, добро пожаловать по кат.
Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Comments 15

Обзор возможностей Qt Creator 4.13 и QBS 1.17 для программирования микроконтроллеров

Reading time 3 min
Views 3.9K
Qt *Programming microcontrollers *
Здравствуйте, товарищи программисты «железячники» и все кто им сочувствует. Я хотел бы продолжить обзор возможностей IDE Qt Creator в связке с системой сборки QBS в части программирования микроконтроллеров.

Ранее я уже писал про улучшения в предыдущих версиях:


Кому эта тема интересна, добро пожаловать по кат.
Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Comments 6

Работа с системой сборки QBS в редакторе Visual Studio Code

Reading time 6 min
Views 2.6K
Qt *Visual Studio *Build automation *
Здравствуйте, товарищи программисты и все кто им сочувствует. Я хотел бы предложить обзор возможностей редактора Visual Studio Code в связке с системой сборки QBS. Кому эта тема интересна, добро пожаловать по кат.
Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 4