Всем доброго времени.
Набросал
тут плагин (там есть и скриншоты и более подробное описание) с помощью которого можно создавать/конфигурировать/менять отдельные конфигурации аппаратных GDB серверов для отладки On-Chip систем (MCU). Кто работал с Keil/IAR/CoCox - тот в теме.
В настоящее время BareMetal поддерживает только GDB сервера (GDB протокол). Но сейчас неудобно задавать хост/порт для удаленного GDB сервера. Т.е. имею ввиду что если вдруг хочу использовать другой GDB сервер, то надо редактировать эти самые хост/порт. Кроме того, сейчас BareMetal не может автоматом стартануть GDB сервер перед отладкой - приходится ручками запускать сервак отдельно, а потом уже коннектиться к нему и отлаживаться.
Конечно, я слукавил: есть небольшой хак чтобы автоматом запускать OpenOCD сервер в Pipe режиме, но это только для OpenOCD (т.к. из известных мне серверов только он нормально поддерживает Pipes).Но в целом, для кастомных серверов невозможно автоматом их стартовать.
Поэтому мой патч дает такую возможность, кроме того, он юзер-френдли.
Порядок действий такой (на примере OpenOCD):
0. Устанавливаем OpenOCD.
1. Создаем новую OpenOCD конфигурацию: задаем путь к екзешке, нужным конфигам, задаем дополнительные аргументы (если надо).
2. Создаем новое BareMetal устройство и в комбо-боксе выбираем любую конфигурацию GDB сервера (например какую-нить из OpenOCD или прочих других).
3. Создаем BareMetal Kit: указываем компилятор, отладчик, выбираем BareMetal устройство (в общем, как обычно).
4. Создаем или открываем любой QBS проект для голой железки (именно QBS - т.к. это проще всего и предпочтительнее). Далее, компилим и отлаживаем его как хотим.
Можем создать еще другие конфигурации GDB серверов и их выбирать вместо OpenOCD..
В общем, если кому интересно - то плюсуйте в баг-трекере.. Если у кого есть другие идеи - тоже пишите.. В любом случае, даже если патч не примут - то может быть, кому-то он пригодится и упростит жизнь.