реклама на сайте
подробности

 
 
> Вопросы по Eclipse, CDT, Zylin embedded CDT, предлагаю обсуждать тут, может потом FAQ выжмем
Сергей Борщ
сообщение Apr 4 2008, 10:43
Сообщение #1


Гуру
******

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



Чтобы не создавать по отдельной ветке на каждый мелкий вопрос, предлагаю обсуждать здесь всякие вопросы, касаемые работы в среде Eclipse. В крайнем случае можно будет при необходимости что-то "отпочковать" в отдельную ветку.

Вопрос первый - как в перспективе Debug расположить окно с переменными, регистрами и т.д. вдоль всего правого края экрана сверху вниз?

Вопрос второй - как заставить его показывать в окне регистров содержимое SPSR (для ARM), а также "затененных" регистров SP и LR (IAR их как-то показывает)?

Вопрос третий - как поставить точку останова на конкретный адрес не перезапуская отладку? Про break *addres в Debug dialog->commands->'Run' commands я знаю, но это требует перезапуска отладки. На строку в исходнике поставить можно, а если мне надо поставить на конкретную команду, причем не дожидаясь пока эта команда попадет в окно дизассемблера?

Вопрос четвертый - как его заставить показать в окне дизассемблера кусок с произвольного адреса или как "пролистать" дизассемблированный текст дальше вверх-вниз? Попутный вопрос - можно ли его заставить в этом окне показывать команды по порядку адресов - мне он часто показывает команды с пропусками или в причудливо перемешанном порядке.

Вопрос пятый - (ARM) можно ли как-то сбросить ядро не перезапуская сеанс отладки? Т.е. легким движением перевести его в ARM, SYSTEM, записать в PC 0 и остановить его на нулевом адресе.

Вопрос шестой - как его заставить запомнить, что в окне memory я хочу всегда видеть шестнадцатиричные цифры и не спрашивать об этом после каждого перезапуска отладки? При добавлении адреса в окно он этого дурацкого вопроса не задает.

Вопрос седьмой - где ставится галочка "открывать преспективу Debug при запуске отладки"? Оно спросило когда-то при создании не то проекта, не то воркспейса, я ответил неправильно а теперь не могу найти где это изменить.

Вопрос восьмой - работа с системой контроля версий. Что из каталога .metadata надо хранить в репозитории, а что создается само при старте среды? Хранить весь каталог не подходит - в нем после каждого старта среды создается куча новых файлов. Не хранить его тоже неудобно. Как я понял, в нем живут настройки Debug. Во всяком случае при переносе только проекта (без workspace) на другую машину настройки отладки пропадают (кто это придумал?? ведь в этих настройках указывается конкретный проект и выходной файл, т.е. эти настройки больше привязаны к конкретному проекту а не к workspace.)


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
51 страниц V  « < 4 5 6 7 8 > »   
Start new topic
Ответов (75 - 89)
ZAA
сообщение Aug 6 2008, 14:31
Сообщение #76


Частый гость
**

Группа: Участник
Сообщений: 141
Регистрация: 10-02-08
Из: Екб
Пользователь №: 34 906



Уважаемые коллеги!!! Кто-нить сталкивался с проблемой такого характера в ECLIPSE (а может это руки у меня раскривушные).

В общем, собираю (давно уже) проекты в эклипсе для AT91SAM7x256 (под FreeRTOS). Причем и мэйкфайлы приходилось править (свои файлы включать, убирать, пути другие прописывать) и проект ребилдить (clean all) - никаких проблем не возникало. А недавно вот начала работать над протоколом ModbusRTU (уже почти закончила) и надо было добавить к стандарному makefile 2 файлика - один в Thumb режиме компилится (simple_serial.c), а другой в ARM (simple_serial_ISR.c). Все скомпилилось, работает. Но теперь, когда я хочу добавить в мэйкфайл какие-нить еще необходимые файлы (например для работы с MMC картой), проек компилится без ошибок, но бинарник не пашет, то есть задачи не запускаются и т. д. (хотя по отдельности modbus и mmc) работают. Приходится опять проект пересобирать и все функции валить в один файл (simple_serial.c) - и, о чудо все работает.

Помогите, плз, кто сталкивался с подобным, или тыкните носом в ошибку help.gif

В один файл не особо хочется все настройки и функции пихать!
Go to the top of the page
 
+Quote Post
injen-d
сообщение Aug 7 2008, 17:39
Сообщение #77


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 10-10-07
Из: Воронежа
Пользователь №: 31 250



Цитата(ZAA @ Aug 6 2008, 18:31) *
Уважаемые коллеги!!! Кто-нить сталкивался с проблемой такого характера в ECLIPSE (а может это руки у меня раскривушные).
...
Помогите, плз, кто сталкивался с подобным, или тыкните носом в ошибку help.gif

В один файл не особо хочется все настройки и функции пихать!

С 99% уверенностью можно сказать, что ошибка где-то в make-файле, а его то Вы и не удосужились показать.
Go to the top of the page
 
+Quote Post
ZAA
сообщение Aug 11 2008, 05:08
Сообщение #78


Частый гость
**

Группа: Участник
Сообщений: 141
Регистрация: 10-02-08
Из: Екб
Пользователь №: 34 906



Цитата(injen-d @ Aug 7 2008, 20:39) *
С 99% уверенностью можно сказать, что ошибка где-то в make-файле, а его то Вы и не удосужились показать.

Прикрепляю текст мэйкфайла)
Прикрепленные файлы
Прикрепленный файл  Makefile.txt ( 2.47 килобайт ) Кол-во скачиваний: 133
 
Go to the top of the page
 
+Quote Post
amw
сообщение Aug 11 2008, 15:14
Сообщение #79


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(ZAA @ Aug 11 2008, 08:08) *
Прикрепляю текст мэйкфайла)

Код
RTOSDemo.elf : $(THUMB_OBJS) $(ARM_OBJS) boot.s Makefile
    $(CC) $(CFLAGS) $(ARM_OBJS) $(THUMB_OBJS) $(LIBS) boot.s $(LINKER_FLAGS)

Что такое boot.s? Если исходник- то почему он примешан в линковку? Если объектник - то почему такое странное имя?
Не помешает еще скрипт линкера. Подозрение на то, что загрузочный код попадает не по тем адресам.
Я так понимаю компиляция и линковка идет без ошибок и варнингов?
Переставте объектный файл с векторами в самое начало перед $(ARM_OBJS) или в самом $(ARM_OBJS) поставте его первым в списке.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
ZAA
сообщение Aug 11 2008, 15:38
Сообщение #80


Частый гость
**

Группа: Участник
Сообщений: 141
Регистрация: 10-02-08
Из: Екб
Пользователь №: 34 906



Цитата(amw @ Aug 11 2008, 18:14) *
Я так понимаю компиляция и линковка идет без ошибок и варнингов?
Переставте объектный файл с векторами в самое начало перед $(ARM_OBJS) или в самом $(ARM_OBJS) поставте его первым в списке.

Спасибо за совет. Завтра попробую. Да, все компилируется без ошибок.

Сообщение отредактировал ZAA - Aug 11 2008, 15:39
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 10 2008, 15:32
Сообщение #81


Гуру
******

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



Отвечаю на некоторые свои же вопросы.
Цитата(Сергей Борщ @ Apr 4 2008, 13:43) *
Вопрос третий - как поставить точку останова на конкретный адрес не перезапуская отладку? Про break *addres в Debug dialog->commands->'Run' commands я знаю, но это требует перезапуска отладки. На строку в исходнике поставить можно, а если мне надо поставить на конкретную команду, причем не дожидаясь пока эта команда попадет в окно дизассемблера?
Поставил эклипсу 3.4.0 ganymede, комплект разработки C/C++. Инсталлировал плагин Zylin embedded cdt 4.5.1. В окне консоли gdb теперь можно вводить команды вручную.
Цитата(Сергей Борщ @ Apr 4 2008, 13:43) *
Вопрос четвертый - как его заставить показать в окне дизассемблера кусок с произвольного адреса или как "пролистать" дизассемблированный текст дальше вверх-вниз? Попутный вопрос - можно ли его заставить в этом окне показывать команды по порядку адресов - мне он часто показывает команды с пропусками или в причудливо перемешанном порядке.
Частично решается вводом команды disassemble адрес1 адрес2 в консоли gdb.
Цитата(Сергей Борщ @ Apr 4 2008, 13:43) *
Вопрос пятый - (ARM) можно ли как-то сбросить ядро не перезапуская сеанс отладки? Т.е. легким движением перевести его в ARM, SYSTEM, записать в PC 0 и остановить его на нулевом адресе.
Опять же - monitor reset в консоли.

Вопрос к админам: Можно ли (и как) в этой ветке первым сообщением поместить выжимку вопросов и ответов из этого обсуждения?
Можно ли (и как) почистить эту ветку, чтобы первым сообщением висели вопросы с ответами, а ниже - вопросы, на которые пока нет ответов, и по мере появления ответов переносить вопросы в первое сообщение?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
sevstels
сообщение Sep 26 2008, 14:37
Сообщение #82


Знающий
****

Группа: Участник
Сообщений: 626
Регистрация: 3-12-07
Пользователь №: 32 910



На мой взгляд, очень интересная вводная лекция о работе в Eclipse.

http://www.artlebedev.ru/tools/technogrett...e-introduction/


--------------------
Herz - дятел.
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Sep 30 2008, 14:16
Сообщение #83


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Три статьи на русском о Eclipse

Перенос разработок Visual Studio C и C++ в Eclipse CDT

Создаем расширение для Eclipse: шаг за шагом

Разработка на C/C++ в Eclipse IDE


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
COMA
сообщение Oct 14 2008, 11:13
Сообщение #84


Знающий
****

Группа: Свой
Сообщений: 851
Регистрация: 28-08-04
Пользователь №: 559



Добрый день.
Помогите составить необходимый минимум компонентов из плагина СDT.
ИМХО, многое из состава CDT не так и необходимо.
[attachment=25763:attachment]
Go to the top of the page
 
+Quote Post
ikX
сообщение Oct 16 2008, 16:28
Сообщение #85


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 27-07-05
Пользователь №: 7 138



В CDT 5.0 указано поддержка doxygen
Цитата
Doxygen editor support (plus framework)

Что имеется в виду? Aвтовставка комментариев doxygen? Тогда как это работает? Мне не удалось заставить Eclipse вставить комментарий.
Go to the top of the page
 
+Quote Post
xelax
сообщение Oct 17 2008, 09:39
Сообщение #86


Местный
***

Группа: Свой
Сообщений: 370
Регистрация: 7-11-06
Пользователь №: 22 035



Цитата(ikX @ Oct 16 2008, 20:28) *
В CDT 5.0 указано поддержка doxygen

Что имеется в виду? Aвтовставка комментариев doxygen? Тогда как это работает? Мне не удалось заставить Eclipse вставить комментарий.


У меня вставляет шапки в файлы, а также подсвечивает doxygen'овский синтаксис. Возможно умеет большее, пробовать не пытался.
Go to the top of the page
 
+Quote Post
ikX
сообщение Oct 17 2008, 12:50
Сообщение #87


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 27-07-05
Пользователь №: 7 138



Цитата(xelax @ Oct 17 2008, 12:39) *
У меня вставляет шапки в файлы, а также подсвечивает doxygen'овский синтаксис.

А подробнее можно?. Пишу я к примеру int foo(int x, int y){}. Что нужно нажать/вызвать для вставки Eclips'ой doxygen комментария ?
Go to the top of the page
 
+Quote Post
xelax
сообщение Oct 17 2008, 13:42
Сообщение #88


Местный
***

Группа: Свой
Сообщений: 370
Регистрация: 7-11-06
Пользователь №: 22 035



Цитата(ikX @ Oct 17 2008, 16:50) *
А подробнее можно?. Пишу я к примеру int foo(int x, int y){}. Что нужно нажать/вызвать для вставки Eclips'ой doxygen комментария ?

Кликаешь на проекте
Properties -> C/C++ General
ставишь галочку Enable project specific settings и выбираешь Documentation Tool Doxygen.

Шапку у меня генерит для файла, а не для каждой функции. Наверное можно сделать и для каждой функции. Я не пытался.
Очень удобно то, что расцвечивает синтаксис doxygen.
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Oct 20 2008, 04:58
Сообщение #89


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Цитата(ikX @ Oct 17 2008, 16:50) *
А подробнее можно?. Пишу я к примеру int foo(int x, int y){}. Что нужно нажать/вызвать для вставки Eclips'ой doxygen комментария ?


Если написать int foo(int a, int b ) и перед функцией ввести /**, то автоматом вставится примерно такая шапка:
Код
/**
*  
* @param a
* @param b
* return
*/


Кроме того, внутри doxygen-комментариев работает автокомплит по его ключевым словам.

Цитата(xelax @ Oct 17 2008, 17:42) *
Шапку у меня генерит для файла, а не для каждой функции.

У шапки файла, насколько я понимаю, ноги растут от шаблонов файлов, а не от doxygen-а.
Go to the top of the page
 
+Quote Post
xelax
сообщение Oct 20 2008, 07:24
Сообщение #90


Местный
***

Группа: Свой
Сообщений: 370
Регистрация: 7-11-06
Пользователь №: 22 035



Цитата(Непомнящий Евгений @ Oct 20 2008, 08:58) *
У шапки файла, насколько я понимаю, ноги растут от шаблонов файлов, а не от doxygen-а.


Скорее всего так и есть.
/** - это уже и есть doxygen тэг.
Go to the top of the page
 
+Quote Post

51 страниц V  « < 4 5 6 7 8 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th June 2024 - 13:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01521 секунд с 7
ELECTRONIX ©2004-2016