Как стать автором
Обновить

Комментарии 6

Потрясающе! =) Просто и удобно. Еще один аргумент для перехода на замечательный qbs.

Хотя я не понял, почему вызов arm-eabi GCC сделан не через кастомный тулчейн? Я под другой embedded так и делал.
Цель была максимально упростить и ускорить старт. Т.е. за 15 минут или за 5 (если Qt уже установлен) получить результат.
В принципе, данный шаблон, после минимальных переделок, можно адаптировать под любой контроллер. Добавить поле ввода пути к установленному тулчейну и вперед!
Я решил оставить тулчейн от Arduino потому, что уже установленная мною версия кастомного тулчейна ничем не отличается. А тут уже бритва Оккама срезала все лишнее))).
Да я что-то в таком роде и предполагал. Просто спросил, потому что я свои Rule для компилятора не добавлял, а использовал стандартный import/cpp module. Немного похачив стандартные настройки. Просто в чем там отличие от стандартных опций GCC?
Имена компилятора и ar можно переопределять.

p.s. мне еще вот эти конструкции не очень понравились «prefix: includePaths[8]». В плане модификации оригинального includePaths… я бы просто прямо в группе их и задавал. Но это дело вкуса.
Здесь проблема вот в чем. При использовании переопределенного компилятора нету возможности вызывать (я этого не нашел, по крайней мере) разные компиляторы для разных типов файлов (для 'c' — gcc и для 'cpp' — g++). Отсюда и теги 's' (чтобы внутренний компилятор не вызывался).
А по поводу includePath…
Пришлось на это пойти для использования всей мощи QtCreator. Без установленной зависимости от cpp не было автодополнения, не было переходов по ctrl+click. Qt превращался в блокнот. Чтобы это включить, надо в срр добавить используемые ресурсы. Для меня удобнее было это делать одной строчкой: cpp.includePaths: includePaths. Согласен — немного вырвиглазно выглядит. Наверное, переделаю под Вашу идею — добавлять буду в группе. Спасибо за идею.
По поводу QBS. Первая версия шаблона была на Makefile. Но она не давала той наглядности, что появилась с QBS.
Если интересна поддержка других плат (более 150+), включая Arduino Due — советую посмотреть на PlatformIO. Не нужно ставить никакие Arduino IDE, тулчейны и тд. Работает на всех популярных ОС (Win, Linux, Mac), включая Linux ARMv6/7.

PlatformIO имеет встроенный экспорт проекта под популярные IDE, включая Qt Creator. В Вашем случае это будет выглядит так:
platformio init --ide qtcreator --board due


Дальше достаточно просто импортировать созданный проект и «Menu: Build > Build All».
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории