Easyelectronics.ru

Электроника для всех
Текущее время: 26 ноя 2020, 20:38

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 15:08 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
Есть проект, достаточно сложный. Собирается несколькими мейкфайлами. Портировать в Эклипс накладно. Отладка голым GDB уныла. Возможно ли как-то запускать отладку в эклипсе без настройки сборки проекта? Я в курсе что эклипс может использовать внешние скрипты для сборки, но не хочется возиться с ними, хочется просто загрузить код и отлаживать через GDB+OpenOCD.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 16:13 
Старожил
Аватара пользователя

Зарегистрирован: 04 окт 2011, 10:19
Сообщения: 2118
А чем Ozone не угодил ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 16:28 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
Я впервые услышал о нём. Он работает с OpenOCD?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 17:44 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 2004
Нет, openocd работает только с gdb
Вопрос ещё в том какая debug инфа в elf и есть ли она там вообще
readelf --debug-dump

_________________
mcu.goodboard.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 17:55 
Старожил
Аватара пользователя

Зарегистрирован: 04 окт 2011, 10:19
Сообщения: 2118
count_enable писал(а):
Я впервые услышал о нём. Он работает с OpenOCD?

Он работает с JLink за 20$


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 17:56 
Старожил
Аватара пользователя

Зарегистрирован: 04 окт 2011, 10:19
Сообщения: 2118
vt340 писал(а):
Нет, openocd работает только с gdb
Вопрос ещё в том какая debug инфа в elf и есть ли она там вообще
readelf --debug-dump

Если люди сделали несколько make файлов, то уж добавить debug info для них не проблема.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 18:01 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
JLink точно отпадает ибо уже вся система дебага построена и переделывать не будем (не говоря уж о том что для коммерческого использования нужно заплатить в 10-50 раз больше). Система нестандартная с кастомным процессором.

Можем добавить дебаг инфо, скомпилировать с -Og, но я не знаю как сконфигурировать эклипс для такого использования.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 18:31 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 2004
Из debug инфы gdb берёт ссылки на позиции в файлах, а текстовку из самих файлов
IDE должна знать то же дерево файлов которое знает gdb, т.е. по идее достаточно как-то натянуть новый проект на существующий каталог, собирать не обязательно, gdb может запускаться из ide и цепляться к мк и без сборки и загрузки elf

_________________
mcu.goodboard.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 20:05 
Старожил
Аватара пользователя

Зарегистрирован: 04 окт 2011, 10:19
Сообщения: 2118
count_enable писал(а):
JLink точно отпадает ибо уже вся система дебага построена и переделывать не будем (не говоря уж о том что для коммерческого использования нужно заплатить в 10-50 раз больше). Система нестандартная с кастомным процессором.

Можем добавить дебаг инфо, скомпилировать с -Og, но я не знаю как сконфигурировать эклипс для такого использования.

Сделайте под eclipse проект make. А потом скопируйте свои файлы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 29 июн 2020, 21:10 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 2004
Я не знаю как эклипс, но codelite например умела это делать просто перетаскиванием мышью корневого каталога на область проекта и тремя настройками дебага - где gdb, где elf и что target remote

_________________
mcu.goodboard.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 14:31 
Старожил

Зарегистрирован: 10 фев 2016, 19:55
Сообщения: 351
count_enable писал(а):
Есть проект, достаточно сложный. Собирается несколькими мейкфайлами.

Т.е. нужно запускать несколько команд 'make .....' для сборки всего проекта?
В общем случае для добавления проекта в Eclipse в дереве проектов нужно правой кнопки мыши вызвать контекстное меню и в нём выбрать пункт 'Import...'. Далее в мастере выбрать 'C/C++' -> 'Existing Code as Makefile Project' (см. картинку). Далее в мастере выбираете каталог, в котором хранится код проекта с Makefile (обычно Makefile в корне проекта располагается).
Такие шаги нужно проделать для каждого Makefile, который запускается командой 'make .....'.
После этого Eclipse сможет собирать Ваши проекты или проект, если он один (т.е. есть "корневой" Makefile, который использует остальные).
Только сам инструмент в редакторах возможно будет показывать кучу ошибок. Они ни на что не влияют, но если они Вас раздражают, то в настройках проектов нужно прописать правильные пути инклудов и значения макросов из Makefile'ов. Дело в том, что Eclipse свой анализатор кода, со своими настройками и, сторонние Makefile он не понимает, т.е. собирать - собирает, но не обрабатывает.
Вложение:
Screenshot_20200630_121548.jpg
Screenshot_20200630_121548.jpg [ 79.2 Кб | Просмотров: 631 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 14:40 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
Да, система мейкфайлов вызываемых с параметрами. Сборка занимает несколько минут.

Поскольку при сборке мне эклипс не нужен, я решил попробовать его использовать чисто для дебага. Если гружу проект, создаю дебаг конфигурацию и указываю путь уже к скомпилированому эльфу, то дебаг запускается но сразу выполняется переход по незнакомому адресу и пошаговая отладка невозможна - я "не попадаю" в код, даже в main.c


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 15:18 
Старожил

Зарегистрирован: 26 авг 2014, 10:34
Сообщения: 774
может пригодится
голый gdb + QEMU + скриптик - уже не так уныло и может проще будет чем к эклипсу прикручивать:
https://mcla.ug/blog/emulating-stm32-qemu.html
з.ы. есть сборка QEMU для Cortex M0 - пробовал, работает


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 16:38 
Старожил

Зарегистрирован: 10 фев 2016, 19:55
Сообщения: 351
count_enable писал(а):
Поскольку при сборке мне эклипс не нужен, я решил попробовать его использовать чисто для дебага.

Даже, если не будете использовать Eclipse для сборки, проекты всё равно надо проимпортировать в рабочее пространство Eclipse. Без этого Eclipse не сможет ни точки прерывания поставить, ни исходники показать.
Процедура эта с одной стороны простая, но могут быть ньюансы...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 17:43 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
oleg110592 писал(а):
может пригодится
голый gdb + QEMU + скриптик - уже не так уныло и может проще будет чем к эклипсу прикручивать:
Спасибо. QEMU этап уже пройдён, сейчас поднимаем железо и тут без дебаггера работающего на целевой системе никак.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 18:37 
Старожил

Зарегистрирован: 08 июл 2013, 17:00
Сообщения: 779
Извините за оффтоп, но тут как раз те люди, которые мне очень вероятно подскажут верное направление.

После Кейла попробовал поставить Эклипс и... И как-то непонятно как вообще с ним работать. Где можно почитать что-нибудь типа "Быстрый старт", а потом и более обстоятельное по работе с Эклипсом. Работаю с STM32, поэтому хотелось бы найти готовую сборку Эклипса под это дело, чтобы если уж не "из коробки" как у Кейла, то с небольшим количеством телодвижений получить среду разработки под STM32.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 18:46 
Старожил
Аватара пользователя

Зарегистрирован: 28 янв 2010, 11:56
Сообщения: 4002
Откуда: Винница
Так это Atollic TrueStudio.

_________________
Китайская комплектация - европейское качество!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 19:56 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
STM32CubeIDE это перекормленный Эклипс с прикрученным Кубом. Жирно, но запускается всё искаропки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 21:22 
Старожил
Аватара пользователя

Зарегистрирован: 28 янв 2010, 11:56
Сообщения: 4002
Откуда: Винница
Собственно, перекормленный эклипс это атоллик, а STM32CubeIDE - атоллик с прикрученным к нему кубом. :)

_________________
Китайская комплектация - европейское качество!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 30 июн 2020, 22:31 
Старожил

Зарегистрирован: 08 июл 2013, 17:00
Сообщения: 779
А есть то же самое, но не перекормленное и с книжкой? Пусть даже немного нужно будет подкрутить руками. Ну не один ведь я использую STM32, поэтому, очень вероятно, что уже есть "заточенный" под это дело Эклипс с плагинами и более-менее внятный мануал как с этим работать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 01 июл 2020, 12:55 
Старожил

Зарегистрирован: 11 сен 2012, 11:19
Сообщения: 5896
tonyk, SES+Ozone ...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 02 июл 2020, 14:52 
Старожил

Зарегистрирован: 10 фев 2016, 19:55
Сообщения: 351
tonyk писал(а):
А есть то же самое, но не перекормленное и с книжкой?

С простой книжкой "Быстрый старт" -- нет.

Если нужна поддержка только STM32, то предложенный вариант STM32CubeIDE, наверно, лучший.
Если есть планы работать не только с продукцией STM, то можно выбрать другое решение:
К экземпляру Eclipse нужно добавить расширение CDT https://www.eclipse.org/cdt/ для поддержки написания кода на языках C и C++. Или скачать уже подготовленный Eclipse для C/C++ с оф.сайта. Так же к этому экземпляру нужно дополнительно добавить расширение GNU MCU https://gnu-mcu-eclipse.github.io/ -- в среде появится поддержка различных MCU (среди них и STM32).
Как работать с тем или иным расширением есть документация на соответствующих сайтах.
Но есть пара проблем:
1. Eclipse активно развивающаяся платформа, так же активно развиваются и расширения для Eclipse -- документация не всегда поспевает за релизами, про книжки вообще молчу.
2. Разработчики расширений не всегда парятся по поводу поставки готовых продуктов. Тот же GNU MCU требует определённой настройки (процесс описан в документации) прежде, чем пользователь сможет его использовать.

Но в моём случае у Eclipse есть большой плюс -- единая среда разработки для всего многобразия кода, который я создаю -- поддержка языков: C/C++, Java, Python и т.п.; поддержка плаформ: Linux, голые ARM, AVR и т.п. Нет необходимости "прыгать" между разными IDE и подстраиваться под каждую.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 03 июл 2020, 16:11 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
Решил попробовать сбилдить проект через Эклипс. В проекте нужен Tensorflow-micro. В нём все хедеры заданы с полным путём:
Код:
#include "tensorflow/lite/micro/memory_planner/greedy_memory_planner.h"
И хедеров этих туева хуча.
Структура проекта:

Код:
my_project
|_ src
|       |_ main.c
|       |_ (other shit)
|_ tensorflow
|       |_ lite
|       |_ (other tensorflow shit)
|_ third_party
       |_ flatbuffer and other libs used by tensorflow


Возможно ли как-то автоматически исправить эти пути?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 03 июл 2020, 18:50 
Старожил

Зарегистрирован: 10 фев 2016, 19:55
Сообщения: 351
Проще каталог 'tensorflow' перенести внутрь 'src':
Код:
my_project
|_ src
|       |_ main.c
|       |_ tensorflow
|       |       |_ lite
|       |       |_ (other tensorflow shit)
|       |_ (other shit)
|_ third_party
       |_ flatbuffer and other libs used by tensorflow


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Eclipse чисто как дебаггер
СообщениеДобавлено: 03 июл 2020, 19:06 
Старожил

Зарегистрирован: 25 авг 2011, 14:00
Сообщения: 3232
Тоже пробовал. Не хочет компилироваться ибо:
Код:
riscv64-unknown-elf-g++ -march=rv32i -mabi=ilp32 -mtune=size -mcmodel=medany -msmall-data-limit=8 -mno-strict-align -mno-save-restore -O0 -fmessage-length=0 -fno-common  -g3 -I"/home/osama/eclipse-workspace/cia_summer_project/src" -std=gnu++11 -fabi-version=0 -MMD -MP -MF"src/tensorflow/lite/micro/memory_planner/greedy_memory_planner.d" -MT"src/tensorflow/lite/micro/memory_planner/greedy_memory_planner.o" -c -o "src/tensorflow/lite/micro/memory_planner/greedy_memory_planner.o" "/home/osama/cia_summer_project/tensorflow/lite/micro/memory_planner/greedy_memory_planner.cc"
/home/osama/eclipse-workspace/cia_summer_project/tensorflow/lite/micro/memory_planner/greedy_memory_planner.cc:16:10: fatal error: tensorflow/lite/micro/memory_planner/greedy_memory_planner.h: No such file or directory
#include "tensorflow/lite/micro/memory_planner/greedy_memory_planner.h"


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2  След.


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB