История изменений
Исправление h4tr3d, (текущая версия) :
У меня в основном разработка и отладка под Cypress FX3, код прошивок для девайсов Epiphan Systems Inc линейки AV.io и KVM2USB 3.0. Там правда у меня C++ ;-) Используется OpenOCD для загрузки и отладки кода по JTAG через Baremetal плагин (правда в сам OpenOCD пришлось коммитить, добавить поддержку ThreadX для ARM926E-JS: https://habr.com/post/249991/). А один сценарий вообще такой: https://habr.com/post/274179/ (в дополнение линков с хабра). Сборку сделал на CMake (сам сделал шаблон для Cypress FX3, есть на гитхабе).
Для них же драйвер для PCIe и USB устройств на Linux, там уже чистый C. В качестве проекта использую CMake враппер, что бы более адекватно строить кодовую модель, разложив файлы по таргетам и вытащив из сборки (Makefile-based) параметры компилятора и так далее. Частично использую механизмы деплоймента, что бы собрать драйвер на другой машине и загрузить его.
Есть мелкие нарекания. В частности навигация по коду в Clion ощутимо лучше, удобнее реализован поиск произвольных символов (который по Double Shift). Правда (для меня) на этом достоинства и заканчиваются. В остальном QtC уже заруливает. Удобно задавать компиляторы через Kit'ы, параметры для сборок. В CMakeProjectManager есть адекватный механизм передачи параметров в CMake (по типу как реализовано в cmake-gui, правда пока не обрабатываются типы параметров FILEPATH и DIRPATH /пишу по памяти/, точнее обрабатываются как STRING, т.е. не подставляется делегат для редактирования, что бы можно было открыть файловый диалог и нужно просто редактировать ручками как строку).
Кстати, я вообще QtC практически для разработки на Qt не использую, при том, что это мой основной инструмент, пусть не идеальный, но на текущий момент наиболее удобный. А по сравнению с Clion, досадные баги я сам исправляю и уже не раз коммитил в апстрим.
Сейчас ещё впилили зачаток LangServer Client, пока в основном для пистона, добавили экспорт кодовой модели в compile_commands.json и добавили менеджер проектов, который читает compile_commands.json. Я пока сильно не распробовал, теоретически должно быть куда лучше Generic Project Manager для работы с проектами с произвольной системой сборки (ну, в определённых пределах).
ЗЫ если будет интересно за CMake wrapper, можно отдельно посмотреть на говноподелку коллективного бессознательного в нашей компании, хоть и удобную :) Работает как для QtC так и для Clion.
Исходная версия h4tr3d, :
У меня в основном разработка и отладка под Cypress FX3, код прошивок для девайсов Epiphan Systems Inc линейки AV.io и KVM2USB 3.0. Там правда у меня C++ ;-) Используется OpenOCD для загрузки и отладки кода по JTAG через Baremetal плагин (правда в сам OpenOCD пришлось коммитить, добавить поддержку ThreadX для ARM926E-JS: https://habr.com/post/249991/). А один сценарий вообще такой: https://habr.com/post/274179/ (в дополнение линков с хабра). Сборку сделал на CMake (сам сделал шаблон для Cypress FX3, есть на гитхабе).
Для них же драйвер для PCIe и USB устройств на Linux, там уже чистый C. В качестве проекта использую CMake враппер, что бы более адекватно строить кодовую модель, разложив файлы по таргетам и вытащив из сборки (Makefile-based) параметры компилятора и так далее. Частично использую механизмы деплоймента, что бы собрать драйвер на другой машине и загрузить его.
Есть мелкие нарекания. В частности навигация по коду в Clion ощутимо лучше, удобнее реализован поиск произвольных символов (который по Double Shift). Правда (для меня) на этом достоинства и заканчиваются. В остальном QtC уже заруливает. Удобно задавать компиляторы через Kit'ы, параметры для сборок. В CMakeProjectManager есть адекватный механизм передачи параметров в CMake (по типу как реализовано в cmake-gui, правда пока не обрабатываются типы параметров FILEPATH и DIRPATH /пишу по памяти/, точнее обрабатываются как STRING, т.е. не подставляется делегат для редактирования, что бы можно было открыть файловый диалог и нужно просто редактировать ручками как строку).
Кстати, я вообще QtC практически для разработки на Qt не использую, при том, что это мой основной инструмент, пусть не идеальный, но на текущий момент наиболее удобный. А по сравнению с Clion, досадные баги я сам исправляю и уже не раз коммитил в апстрим.
ЗЫ если будет интересно за CMake wrapper, можно отдельно посмотреть на говноподелку коллективного бессознательного в нашей компании, хоть и удобную :) Работает как для QtC так и для Clion.