|
|
  |
Вопросы по Eclipse, CDT, Zylin embedded CDT, предлагаю обсуждать тут, может потом FAQ выжмем |
|
|
|
Jun 27 2012, 05:37
|
Знающий
   
Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153

|
Цитата(oran-be @ Jun 26 2012, 20:18)  Имею проект/IDE с готовыми makefie'ми, привинтил его к Эклипсу, но есть проблема: в мейках прописаны цели разные, в Эклипсе не могу добавить кофигурацию - захожу в менеджер кофигураций, жму кнопку New..., и - банан, никакой реакции. У меня добавляется, только что попробовал. Эклипс Indigo Service Release 2, cdt 8.0.2.201202111925. При создании проекта выбирал "makefile with existing code". Цитата И еще вопрос - можно ли Эклипсовский анализатор кода заставить ссылки на токены по всему проекту сделать, а не только по отдельным файлам? При этом хидеры в файлах он видит нормально. Не понял, что имеется в виду... Если сбоит эклипсовый анализатор, проверь что у тебя правильные пути к системным либам и предопределенные макры (свойства проекта, с++ общее, пути и символы). Выше обсуждалось, как потянуть их автоматом из make-файла
|
|
|
|
|
Jul 3 2012, 16:44
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
у меня что-то странное произошло с Eclipse Helios... с месяц назад все работало, потом как-то было не до программирования, а вот сейчас пробую - бред какой-то: ни один старый проект не собирается! в консоли пишет что-то невразумительное: Цитата **** Clean-only build of configuration Debug for project invertor_500_super ****
make clean rm -rf ./main.o ./main.d invertor_500_super.hex invertor_500_super.lss sizedummy invertor_500_super.elf ' '
**** Build of configuration Debug for project invertor_500_super ****
make all 'Building file: ../main.c' 'Invoking: AVR Compiler' ../main.c: In function 'main': ../main.c:180:10: warning: variable 'hyst_power_on' set but not used [-Wunused-but-set-variable] Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. Џ®ЇлвЄ § ЇЁбЁ ў ҐбгйҐбвўгойЁ© Є «. make: write error и выскакивает окошко с ошибкой Java: Цитата Errors occurred during the build. Errors running builder 'CDT Builder' on project 'invertor_500_super'.
java.lang.NullPointerException
java.lang.NullPointerException и так на любой проект! причем любой из этих проектов собирается при помощи make и созданных Eclipse makefile (я пользуюсь встроенными плагинами). то есть avr-gcc установлен корректно и сам по себе работает... пробую переключиться на воркспейс для ARM-овских проектов - идет компиляция... Yagarto... подскажите, пожалуйста: куда копать? что за хрень творится?!
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Jul 26 2012, 12:07
|
Участник

Группа: Участник
Сообщений: 28
Регистрация: 4-07-11
Пользователь №: 66 052

|
Добрый день. Я начал переползать с Кейла на Eclipse, в основном из-за того, что Кейл как-то криво отлаживает с++ ный код (Goto definition с методами словно "не видит" неймспейсы и если код шаблонный, отладчик на него часто не может зайти, поставить брейкпоинт и тд). Это так, предыстория.
Настроить Eclipse для отладки через gdb я не смог, но через mdk-plugin от Кейла поднял отладку через кейловский проект. Возникли такие проблемы: 1) Не видно периферию. Поставил EmbSysRegView, но все регистры в нем пустые, никаких тултипов не вылезает (адреса и ресет-значения видно). В принципе, можно добавлять регистры поименно в окно Expressions, но это на крайний случай. 2) Отладка шаблонного кода происходит еще веселее. Нажимаю step into и оказываюсь в случайном месте случайного .cpp файла из проекта. 3) Не могу въехать, как добавить в Watch глобальную переменную в пространстве имен. А еще все окна - Variables, Expressions, Registers - показывают значения только в шестнадцатиричном формате. При выборе другого формата просмотра ничего не меняется.
Результаты одинаковые на кейловском симуляторе и через Ulink2 или J-link. Контроллер - LPC1766. Eclipse Indigo, 32-х битный с явой 1,6 (на других плагин от кейла не работает).
|
|
|
|
|
Jul 26 2012, 12:20
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
QUOTE (poganoe_lamerishe @ Jul 26 2012, 15:07)  1) Не видно периферию. Поставил EmbSysRegView, но все регистры в нем пустые, никаких тултипов не вылезает (адреса и ресет-значения видно). В принципе, можно добавлять регистры поименно в окно Expressions, но это на крайний случай. Ага, тоже сначала офигел. Двойной щелчок мышью в поле значения "включает" его для отображения. Еще один двойной щелчек выключает. QUOTE (poganoe_lamerishe @ Jul 26 2012, 15:07)  3) Не могу въехать, как добавить в Watch глобальную переменную в пространстве имен. Ищите их среди переменных со странными (mangled) именами - типа _ZN10terminal_t9In_bufferE
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Jul 26 2012, 12:34
|
Участник

Группа: Участник
Сообщений: 28
Регистрация: 4-07-11
Пользователь №: 66 052

|
Цитата(Сергей Борщ @ Jul 26 2012, 16:20)  Ага, тоже сначала офигел. Двойной щелчок мышью в поле значения "включает" его для отображения. Еще один двойной щелчек выключает. Ищите их среди переменных со странными (mangled) именами - типа _ZN10terminal_t9In_bufferE От двойного щелчка просто иконка зеленеет и все. А где эти переменные искать? Variables - add global variables - и там видно только глобальные переменные вне неймспейсов, никаких mangled имен.
|
|
|
|
|
Jul 26 2012, 13:57
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
QUOTE (poganoe_lamerishe @ Jul 26 2012, 15:34)  От двойного щелчка просто иконка зеленеет и все. Сразу после запуска отладчика наблюдаю такое же поведение. Но стоить сделать котя бы один шаг по программе - появляются красные данные.
QUOTE (poganoe_lamerishe @ Jul 26 2012, 15:34)  А где эти переменные искать? Variables - add global variables - и там видно только глобальные переменные вне неймспейсов, никаких mangled имен. А какие имена эти переменные имеют в .map-файле? Возможно это как-то связано с кейлом. Я компилю gcc и отлаживаю gdb - у меня эти переменные видятся в Variables - add global variables именно как mangled:
Хотя... Виноват - это статические члены классов. Пространства имен не использую... Добавлено: Проверил - с пространствами имен точно так же:
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Jul 26 2012, 14:27
|
Участник

Группа: Участник
Сообщений: 28
Регистрация: 4-07-11
Пользователь №: 66 052

|
Цитата(Сергей Борщ @ Jul 26 2012, 17:57)  Сразу после запуска отладчика наблюдаю такое же поведение. Но стоить сделать котя бы один шаг по программе - появляются красные данные. А у меня не появляются  Цитата(Сергей Борщ @ Jul 26 2012, 17:57)  А какие имена эти переменные имеют в .map-файле? Возможно это как-то связано с кейлом. Я компилю gcc и отлаживаю gdb - у меня эти переменные видятся в Variables - add global variables именно как mangled: Возможно, я не совсем понимаю устройство map-файла, но вот словосочетание "curTime" там встречается дважды: TimeService::curTime 0x10000004 Data 4 time_service.o(.data) - в секции global symbols и time_service.o(.text) refers to time_service.o(.data) for TimeService::curTime в Section Cross References. Не совсем понимаю, есть тут где-то имя переменной? В глобальных переменных видно только то, что вне неймспейсов.
Скажите, а как у вас с отладкой шаблонного кода?
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|