Настройка QtCreator для отладки железяки |
Здравствуйте, гость ( Вход | Регистрация )
Настройка QtCreator для отладки железяки |
Roman_L |
11.10.2011, 9:59
Сообщение
#1
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 5.8.2010 Пользователь №: 1934 Спасибо сказали: 0 раз(а) Репутация: 0 |
Доброго времени суток!
Есть желание использовать удобную и привычную IDE в проекте с железкой. Прикрутить toolchain удалось, а с отладкой пока никак. На сколько я знаю Creator поддерживает GDB для отладки приложений. GDB цепляется к openOCD и всё вроде бы должно быть, проблема в том, что всё это надо корректно совместно запустить. Интуитивно уверен что это возможно, но где куда крутить неясно. Может кто-то тюниговал Creator для нестандартного использования, поделитесь опытом! ЗЫ: линукса на железке нет. |
|
|
kuzulis |
11.10.2011, 19:49
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: 7 |
1. По идее не железке должен быть GDB сервер (или как там его).
2. На железке должно находится само отлаживаемое приложение (бинарик) 3. Далее надо на железке запустить GDB сервер с указанием имени/пути к отлаживаемому бинарю и номер IP порта 4. Запустить креатор на хост машине и в его меню "отладка" выбрать пункт типа "подключиться к удаленному серверу" (или как-то так) Я могу и ошибаться конечно, но об этом где-то в гугле было написано, хотя, подойдет ли этот метод - ХЗ (наврядли). |
|
|
Roman_L |
12.10.2011, 8:29
Сообщение
#3
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 5.8.2010 Пользователь №: 1934 Спасибо сказали: 0 раз(а) Репутация: 0 |
1. Программа OpenOCD является GDB-сервером. Цепляется через jtag. Связка железка+адаптер+openOCD+gdb работает как надо.
2. Приложение залито и работает. 3. GDB-сервер (в моём случае openOCD) запущен. А вот подсунуть ему бинарник с прошивкой нельзя. Да и зачем, если он может стянуть её с кристалла, это во-первых, а во-вторых - она ему и не нужна. 4. А тут то как раз самое интересное. Приимущественно всегда QtCreator пытается запустить программу на хосте, за исключением, возможно, одного пункта "запустить и подключить к удаленному приложению..." - 2.0.1 (в новом креаторе появилось также "подключиться к удаленной сессии CDB"). Вот думаю какое колдунство надо применить, чтобы креатор видел запущенный софт на камне и пользовал отладчик. В гугле может быть написано. Ткните носом, я пока не видел) И куда делись "настройки запуска" на вкладке "проекты"!?!?! Это тоже могло помочь. Отставить панику, всё на месте =) |
|
|
Roman_L |
13.10.2011, 8:25
Сообщение
#4
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 5.8.2010 Пользователь №: 1934 Спасибо сказали: 0 раз(а) Репутация: 0 |
Вкратце, Qt Creator удалось подцепить к openOCD. Всё оказалось достаточно просто.
Меню "Отладка" -> "Запустить и подключить к удалённому приложению..." Отладчик указываем из toolchain'а. Локальная программа указываем на .elf файл. (компиляю под Cortex M3 отечественного производства) Хост и порт - там, где запущен openOCD. в моём случае localhost:3333 Архиеткрура ARM появляется после подключения toolchain'а. (я пользую yagarto) Системный корень - папка с проектом (насколько надо - ХЗ) галку я не ставлю. а gdb-сервер (openOCD) запускаю руками. Хотя по идее можно запускать из пункта Скрипт запуска сервера. Ко всему openOCD умеет заливать прошивку в кристалл, но мой камень не поддерживается. Поэтому в настройках запуска программы я указал "программатор" и теперь по ctrl+R оно заливает прошивку в камень. Из минусов: работает немного не стабильно. Чуствуется что не для того предназначено. Кривовато ставит брекпоинты. Думаю это openOCD шалит. Спасибо kuzulis. Был прав. |
|
|
Текстовая версия | Сейчас: 28.12.2024, 1:00 |