2016-10-22 14 views
0

Это ситуация:Использование старого GDB 4,17 с фактическим Eclipse CDT (9.0) или, по крайней мере, с Eclipse, Juno

Я хотел бы отладить компании ST STM8 Микроконтроллер с Eclipse. Для компиляции im использует IAR Kickstart вместе со своим собственным плагином Eclipse. Это работает отлично.

К сожалению, они не предлагают какой-либо способ интегрировать свой отладчик C-Spy в Eclipse.

ST имеет собственную среду, называемую ST Visual Develop, или в краткосрочной перспективе STVD. В пакет входит старый, но рабочий GDB. Это GDB 4.17. Источник также доступен и умеет их компилировать.

Теперь проблема:

GDB 4,17 не поддерживает любой современный переводчик, как ми, mi1 Одер mi0. Он поддерживает только консольные команды.

Я пытался использовать фактический Eclipse (неон) с CDT (9,0) и указали в конфигурации на мой GDB.exe я также контролировать запуск GDB.exe Eclipse, или CDT всегда пытается открыть GDB с параметр -i или -interpreter. Но мой GDB не знает эту команду. Поэтому он ответит «непризнанной командой», а CDT завершает процесс.

В старой версии Eclipse (Juno) с CDT я смог выбрать «verbose console mode», но это также запускает GDB с помощью команды -i.

Теперь вопрос: Есть ли у кого-нибудь идеи, как справиться с этой проблемой? Самый простой способ - сообщить CDT, что он не должен использовать какой-либо из «ми» режимов.

Трудный способ - написать новый GDB на основе версии 5.0 или около того. Но это не очень эффективно для меня ....

Спасибо за любые комментарии.

ответ

1

Извините, что вам сообщили об этом, но нет возможности получить CDT для запуска GDB без использования MI. MI - единственный способ общения CDT и GDB.

Опция "Режим многословной консоли" не является частью реализации DSF-GDB CDT, вместо подробного вывода информация является его собственная консоль, управляемая из Preferences ->C/C++ ->Debug ->GDB ->Включить GDB прослеживает с [...] (см https://wiki.eclipse.org/CDT/User/FAQ#I.27ve_been_asked_for_.27gdb_traces.27.2C_where_can_I_find_them.3F)

Официально CDT поддерживает только GDB 7 и выше, но все еще поддерживается реализация на 6,8 или так и выше. GDB 4.x и 5.x просто не поддерживаются.

+0

Hi Jonah Благодарим вас за ответ. К сожалению, это то, чего я боялся. –

+0

У меня была другая идея. –

+0

Есть ли документация о интерфейсе MI? Возможно, можно было бы написать приложение-оболочку, которое будет связываться с командами CDT и MI, а с другой стороны передает переведенные команды в старый GDB ... Если это возможно, зависит от сложности интерфейса MI , Если у кого-то есть информация об этом или знает, возможно ли это или нет. Оставьте комментарий –