Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопросы по Eclipse, CDT, Zylin embedded CDT
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
Dikoy
А где посмотреть?
AHTOXA
Да, не тот make. От борланда. Дельфи или Билдер. Можно просто найти этот мейк и переместить куда-нибудь во временную папку.
А вообще - ПКМ на "Мой компьютер", "Свойства", "Дополнительно", кнопка "Переменные среды". Переменная называется "PATH", надо в ней путь к GNU make поставить перед путём к борланд make.
Dikoy
Ну точно, какая-то свинота поигралась с дельфой на моём компуке:
C:\PROGRA~1\Borland\Delphi5\Projects\Bpl;C:\PROGRA~1\Borland\vbroker\jre\Bin;C:\PROGRA~1\Borland\vbroker\Bin;C:\PROGRA~1\Borland\Delphi5\Bin;C:\msys\bin;C:\WinAVR-20100110\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

Изменил на
C:\msys\bin;C:\WinAVR-20100110\bin;C:\PROGRA~1\Borland\Delphi5\Projects\Bpl;C:\PROGRA~1\Borland\vbroker\jre\Bin;C:\PROGRA~1\Borland\vbroker\Bin;C:\PROGRA~1\Borland\Delphi5\Bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

Начало компилиться.
Надо ли путь к мейку прописывать полностью, или достаточно на директорию GCC?
Мейк у меня свой, идёт вместе с проектом. Есть подозрение что клипса всё равно подсасывает не его, т.к. на разных компуках она мне даёт разные ошибки и предупреждения на идентичном коде...
Aaron
Подскажите плз, почему в IDE у меня пишет Syntax Error у слова __INLINE (присутствует в core_cm3.h)? Определение этого слова в том же файле IDE подсвечивает как неактивное для всех #ifdef:
Код
/*******************************************************************************
*                Hardware Abstraction Layer
******************************************************************************/
#if defined ( __CC_ARM   )
  #define __ASM            __asm                                      /*!< asm keyword for ARM Compiler          */
  #define __INLINE         __inline                                   /*!< inline keyword for ARM Compiler       */
#elif defined ( __ICCARM__ )
  #define __ASM           __asm                                       /*!< asm keyword for IAR Compiler          */
  #define __INLINE        inline                                      /*!< inline keyword for IAR Compiler. Only avaiable in High optimization mode! */
#elif defined   (  __GNUC__  )
  #define __ASM            __asm                                      /*!< asm keyword for GNU Compiler          */
  #define __INLINE         inline                                     /*!< inline keyword for GNU Compiler       */
#elif defined   (  __TASKING__  )
  #define __ASM            __asm                                      /*!< asm keyword for TASKING Compiler      */
  #define __INLINE         inline                                     /*!< inline keyword for TASKING Compiler   */
#endif

__CC_ARM в том же файле упоминается в таком контексте:
Код
#if defined ( __CC_ARM   ) /*------------------RealView Compiler -----------------*/

Отсюда я делаю вывод, что надо определить слово __GNUC__, но логика подсказывает, что это слово ДОЛЖНО быть определено уже и без меня при подключении стандартных библиотек. Или я заблуждаюсь?
Есть смутное подозрение, что это должно быть указано в свойствах C/C++ - Build - Build Variables, но у меня пусто (не считая системных переменных).
UPD: при этом, сам демо-проект мейкфайлом собирается нормально.
AHTOXA
Сама по себе эклипса конечно не может догадаться, какой у вас компилятор sm.gif
Поэтому либо определите нужный в свойствах проекта ("C++ General" - "Paths and Symbols" - "Symbols"), либо настройте автоматическое определение путей и символов ("C++ Build" - "Discovery Options").
Aaron
Цитата(AHTOXA @ Nov 15 2011, 17:41) *
Сама по себе эклипса конечно не может догадаться, какой у вас компилятор sm.gif
Поэтому либо определите нужный в свойствах проекта ("C++ General" - "Paths and Symbols" - "Symbols"), либо настройте автоматическое определение путей и символов ("C++ Build" - "Discovery Options").

Цитата(IgorKossak @ Nov 13 2011, 14:56) *
Это совершенно лишнее - указывать системные пути вручную.
Надо лишь правильно настроить Project->Properties->C/C++ Build->Discovery Options, особенно поле Compiler invocation command, запустить билд, и нужные пути появятся в Paths and Symbols->Includes

У меня уже там стояло всё настроенное, но не работало. Видать, пока изучал Eclipse, где-то много в настройках накосячил. Поставил Eclipse с нуля, вбил все настройки в Discovery Options, запустил Project - Build, и в итоге к проекту подключились:
C/C++ General - Paths and Symbols - Includes
- библиотеки из папки KGP toolchain
- библиотеки из папки Perl (?!), то есть он ищет, что подключать, на основании системной переменной PATH.
C/C++ General - Paths and Symbols - Symbols
- куча built-in values, в том числе __GNUC__ sm.gif

В итоге теперь таки да, не просто весь код компилится, но и в редакторе никаких ошибок и ворнингов.
PS: всё же пока разберёшься, как среду полностью настроить и связать в единый рабочий инструмент, чёрт ногу сломит wacko.gif
oliva_av
Подскажите, во время отладки ядра Linux, неободимо загрузить и отладить свой модуль (динамический) в Eclipse. Как это сделать? Например, в gdb есть команда add-symbol-file <user_mod.ko> <addr>.
artur_off
Всем привет.

Интересует возможность отладки периферии используя GDB, это сообщение читал, но правка всех объявлений структур скажем для STM32 дело наверное гиблое, хотя выполнимое.
Может кто-то за это время придумал способ видения регистров периферии используя GDB как это сделано скажем в ИАР.
Aaron
Что-то котелок под вечер не варит sad.gif Импортировал старый проект, настройки сборки импортировал из другого проекта(!). сборка проходит нормально, но в конце после сборки выскакивает сообщение:
Цитата
Errors occurred during the build.
Errors running builder 'Integrated External Tool Builder' on project 'AT91-Test'.
The builder launch configuration could not be found.
The builder launch configuration could not be found.

Что-то не могу найти, где эта штука настраивается? что у меня пытается запуститься ещё после выполнения всех целей make??
AHTOXA
Цитата(Aaron @ Jan 25 2012, 20:00) *
Что-то не могу найти, где эта штука настраивается? что у меня пытается запуститься ещё после выполнения всех целей make??

Вероятно, в Project-Properties-Builders?
Aaron
Цитата(AHTOXA @ Jan 26 2012, 08:46) *
Вероятно, в Project-Properties-Builders?

Да, действительно. Там был какой-то Invalid External Tool Builder. Причём он был отключен. Ну я его удалил, и сообщение пропало.
Cosmojam
В QtCreator есть прикольная фича. Если структура или объект используется через указатель, то . автоматически заменяется на -> т.е. можно всегда писать . для доступа к членам структуры, а редактор сам заменит её на -> если требуется. Можно ли так сделать в еклипсе?
Aaron
Цитата(Cosmojam @ Feb 10 2012, 14:15) *
...Можно ли так сделать в еклипсе?

Да, в эклипсе это тоже настраивается. Window -> Preferences -> C/C++ -> Editor -> Content Assist -> Auto-Activation -> Enable auto-replace of '.' with '->' for pointer types.
Cosmojam
Цитата(Aaron @ Feb 10 2012, 15:30) *
Да, в эклипсе это тоже настраивается. Window -> Preferences -> C/C++ -> Editor -> Content Assist -> Auto-Activation -> Enable auto-replace of '.' with '->' for pointer types.

Спасибо!
repka
Вопрос по этапу компиляции в Eclipse (Galileo, Helios, Indigo). Опробованы все доступные эклипсы с одними и теми же файлами проекта, на некольких машинах билдится совершенно без проблем. На моей же, откомпилировав несколько файлов, почему-то перестает видеть инклудовские файлы из своего же проекта. Лечится только прописыванием вручную пути к проекту. WinXPSP3 чистенькая (на старой тоже не работало).
Pavel V.
Цитата(repka @ Mar 26 2012, 19:49) *
Вопрос по этапу компиляции в Eclipse (Galileo, Helios, Indigo). Опробованы все доступные эклипсы с одними и теми же файлами проекта, на некольких машинах билдится совершенно без проблем. На моей же, откомпилировав несколько файлов, почему-то перестает видеть инклудовские файлы из своего же проекта. Лечится только прописыванием вручную пути к проекту. WinXPSP3 чистенькая (на старой тоже не работало).

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

В качестве профилактики могу посоветовать поиграться с пунктами меню Index (правая кнопка на проекте -> Index -> Rebuild, Update, Freshen).
repka
Цитата(Pavel V. @ Mar 30 2012, 09:48) *
Имеются в виду файлы в корневой директории проекта? Вы бы привели структуру файлов, которую пытаетесь скомпилировать, а то так не понятно. У меня вроде никогда таких проблем не возникало, поведение эклипса было полностью ожидаемым.

В качестве профилактики могу посоветовать поиграться с пунктами меню Index (правая кнопка на проекте -> Index -> Rebuild, Update, Freshen).

http://electronix.ru/forum/index.php?showtopic=101195

Никакие "игры" не прокатывают. Укажешь путь к проекту в свойствах проекта (собственно - сам на себя) - билдит. Убираешь - спотыкается на любом файле, непредсказуемо. Но точно, что в момент "спотыкания" находится на одну папку глубже, как будто считая, что root теперь в /Debug.
Marto
День добрый.
Имеется Eclipse Indigo + gcc-avr + avr eclipse plugin.
Пытаюсь поднять отладку через GDB (simulavr), запускаю gdb-сервер и нажимаю debug.
В итоге в консоли имею вот такое сообщение:

warning: RMT ERROR : failed to get remote thread list.

Кто подскажет в чем дело???
_Артём_
Здраствуйте.
Вопрос такой:
В IAR, Keil и тд есть настройка проекта, где указывается тип процессора.
Соответственно можно смотреть где/что определено с помощью Go to definition.
Как правильно настроить Eclipce?

В makefile пишу так:
Код
    CHIP_FAMILY = _EFM32_GECKO_FAMILY
    CHIP        = EFM32G890
    DEFS        = -D$(CHIP)
    DEFS        += -D$(CHIP_FAMILY)

А что и где в редакторе прописать надо?

И ещё вопрос:

пробовал отлаживать через jlink в Eclipse и не нашёл кнопки чтобы сделать сброс программы. Это так и должно быть? Если нет, как задействовать сброс в Eclipse?
При отладки через jlink-IAR сбросить можно.

Спасибо.

AHTOXA
Цитата(_Артём_ @ Apr 5 2012, 03:11) *
А что и где в редакторе прописать надо?

Тут есть два пути. Простой - Project/Properties/C/C++ General/Paths and Symbols/ Symbols - Add, и добавить нужный дефайн.
Посложнее - настроить Discovery options. Тогда эклипса будет всё это определять сама. (Поищите по форуму, про это уже писали)
Цитата(_Артём_ @ Apr 5 2012, 03:11) *
как задействовать сброс в Eclipse?

Можете посмотреть в примерах от scmRTOS (GCC/STM32), там в makefile есть цель reset. Добавляете в окошке Make Targets цель reset, и телемаркет.
_Артём_
Цитата(AHTOXA @ Apr 5 2012, 06:58) *
Тут есть два пути. Простой - Project/Properties/C/C++ General/Paths and Symbols/ Symbols - Add, и добавить нужный дефайн.
Посложнее - настроить Discovery options. Тогда эклипса будет всё это определять сама. (Поищите по форуму, про это уже писали)

Спасибо. Буду пробовать.

Цитата(AHTOXA @ Apr 5 2012, 06:58) *
Можете посмотреть в примерах от scmRTOS (GCC/STM32), там в makefile есть цель reset. Добавляете в окошке Make Targets цель reset, и телемаркет.

Цитата
# reset target
oocd_params_program += -c "reset run"

Нужно OpenOCD ещё ставить?
AHTOXA
Цитата(_Артём_ @ Apr 5 2012, 20:23) *
Нужно OpenOCD ещё ставить?

Да, это вариант для OpenOCD. Для других инструментов - не знаю как.
_Артём_
Цитата(AHTOXA @ Apr 5 2012, 18:33) *
Да, это вариант для OpenOCD. Для других инструментов - не знаю как.


Жаль.
Будем искать.
Есть конечно вариант через Terminate and relaunch, но как-то непривычно.
_Артём_
Продолжаем разговор.
Eclipse ничего не знает о uint32_t и ему подобных. Что понятно.
Что с етим делать?
Прописать папку yagarto в свойствах проекта (Path & Symbols)?
Или ещё как-то можно?
AHTOXA
Лучше настроить Discovery options.
AHTOXA
Давайте напишу чуть подробнее, потому что штука весьма полезная.
Идём в Project - Properties, находим там C/C++ Build / Discovery options.
В Discovery profile выбираем "GCC per project scanner".
В появившемся снизу поле "Compiler invocation command" пишем arm-kgp-eabi-gcc (или arm-none-eabi-gcc в случае CodeSourcery).
Всё. Давим OK, и у нас в "Project Explore" образуется куча инклюдов. Осталось обновить индекс (ПКМ на имени проекта - Index - Rebuild), и порядок, наш эклипс знает, что такое uint32_t sm.gif.
_Артём_
AHTOXA
Спасибо.
Думаю многим эта инфа пригодится: прописывыть всё что Эклипса подхватила - зто ад.

Цитата(AHTOXA @ May 2 2012, 21:51) *
В Discovery profile выбираем "GCC per project scanner".

Кстати возможны варианты.
Нажмите для просмотра прикрепленного файла
Пока выбрал "GCC per project scanner".
Результат крайне положительный: появились не только типы из stdint, но и функции из core_cm3.h.
И по типам из scmRTOS также появилась подсказка.

Осталось прописать тип проца? Задать в Symbols STM32F10X_MD.
Или он тоже автоматом из makefile прочитается?


Ещё вопрос. Как правильно переносить проект с одного компа на другой?
Можно ли папку копировать и потом через импорт открывать?
Или всё же надо Export в zip, потом Import из zip-а. Версия Eclipse подразумевается такая же.
_Артём_
Цитата(_Артём_ @ May 2 2012, 23:40) *
Ещё вопрос. Как правильно переносить проект с одного компа на другой?
Можно ли папку копировать и потом через импорт открывать?
Или всё же надо Export в zip, потом Import из zip-а. Версия Eclipse подразумевается такая же.

Нашёл такой вариант: Import-Select archive file.
Есть другие варианты?
Сергей Борщ
QUOTE (_Артём_ @ May 2 2012, 23:40) *
Осталось прописать тип проца? Задать в Symbols STM32F10X_MD.
Или он тоже автоматом из makefile прочитается?
Нет, настолько она еще не продвинута. В строке Compiler invocation arguments добавить в начало -mmcu=cortex-cm3 -mthumb -DSTM32F10X_MD

QUOTE (_Артём_ @ May 3 2012, 00:57) *
Нашёл такой вариант: Import-Select archive file.
Есть другие варианты?
Я просто копирую проект и на новом месте делаю Import->General->Existing projects into workspace.
_Артём_
Цитата(Сергей Борщ @ May 3 2012, 02:19) *
Нет, настолько она еще не продвинута. В строке Compiler invocation arguments добавить в начало -mmcu=cortex-cm3 -mthumb -DSTM32F10X_MD

попробую...
я задавал в С/С++ General\ Symbols

Цитата(Сергей Борщ @ May 3 2012, 02:19) *
Я просто копирую проект и на новом месте делаю Import->General->Existing projects into workspace.

Делал импорт через Existing code as Makefile project.
Попробовал через Existing projects into workspace - результат лучше. Спасибо.
Непомнящий Евгений
Цитата(Сергей Борщ @ May 3 2012, 03:19) *
Нет, настолько она еще не продвинута. В строке Compiler invocation arguments добавить в начало -mmcu=cortex-cm3 -mthumb -DSTM32F10X_MD


Чтобы ключи компиляции импортировались из make, эклипсу в этом окошке надо указать вызывать не не компилятор, а собственно make. Ну и makefile допилить соответственно - добавить цель вроде discover и ключики для нее подходящие.

Я такое проделал для Scons-а, теперь у меня все ключи компиляции тянутся из sconstruct-файла. Для make не пробовал, но думаю непреодолимых сложностей не предвидится.

Помимо ключей оттуда потянутся и пути к инклюдам - для меня это особенно актуально - у меня их много.
Сергей Борщ
QUOTE (Непомнящий Евгений @ May 3 2012, 16:14) *
Чтобы ключи компиляции импортировались из make, эклипсу в этом окошке надо указать вызывать не не компилятор, а собственно make. Ну и makefile допилить соответственно - добавить цель вроде discover и ключики для нее подходящие.
Ха, интересная мысль, спасибо. Надо попробовать.
AHTOXA
Я вчера попробовал - с наскока не получилось. Причём помню, что раньше вроде делал, а сейчас - не вышло. Глубоко копать не стал, потому что не использую автоматическое обнаружение - от него проекты перестают быть портабельными (обнаруживаются абсолютные пути, а у меня они разные дома и на работе).
Сергей Борщ
QUOTE (AHTOXA @ May 3 2012, 21:27) *
потому что не использую автоматическое обнаружение - от него проекты перестают быть портабельными (обнаруживаются абсолютные пути, а у меня они разные дома и на работе).
У меня тоже пути разные, обнаружение использую и проекты перемещаемы. Что я делаю не так? wink.gif
AHTOXA
Так я не говорю, что оно не работает. Просто мешается sm.gif
Непомнящий Евгений
Цитата(AHTOXA @ May 3 2012, 22:27) *
Я вчера попробовал - с наскока не получилось. Причём помню, что раньше вроде делал, а сейчас - не вышло. Глубоко копать не стал, потому что не использую автоматическое обнаружение - от него проекты перестают быть портабельными (обнаруживаются абсолютные пути, а у меня они разные дома и на работе).


Странно это. В случае, если путь автоопределяются, то эклипс автоматически после каждого билда удаляет старые и добавляет новые. Так что по идее после переноса проекта достаточно сделать ребилд и пути заменятся на новые...
IgorKossak
Цитата(Непомнящий Евгений @ May 4 2012, 08:21) *
... эклипс автоматически после каждого билда удаляет старые и добавляет новые. Так что по идее после переноса проекта достаточно сделать ребилд и пути заменятся на новые...

Автоматически только новые добавляются. Чтобы удалить старые (а точнее - все по умолчанию, т. е. не пользовательские) надо нажать кнопку Clear в окне Discovery Options.
_Артём_
Ещё вопросы.
Нет ли каких-нибудь плагинов к Eclipse, увеличавающих ее функциональность?
Не хватает следующего:
Запоминание буфера обмена на 5-10 элементов.
Автоподсказки по акронимам.

И еще что хотелось бы поменять:

1) контекстное меню как-нибудь подредактировать - слишком оно перегружено.
2) выделение слов по Ctrl+Shift+стрелка - чтобы выделялось слово сразу целиком, а не почастяи - неудобно.
3) автоподсказчик иногда выбора не предлагает - сразу делает подстановку. Иногда это не нужно.

Можно что-нибудь из этого сделать?
Спасибо.

Сергей Борщ
QUOTE (Непомнящий Евгений @ May 3 2012, 16:14) *
Чтобы ключи компиляции импортировались из make, эклипсу в этом окошке надо указать вызывать не не компилятор, а собственно make. Ну и makefile допилить соответственно - добавить цель вроде discover и ключики для нее подходящие.


QUOTE (AHTOXA @ May 3 2012, 21:27) *
Я вчера попробовал - с наскока не получилось.

Разобрался. Действительно удобно. Буду переводить все проекты на такую систему. Тоже с наскока не получилось. Проблема была в передачи пути к specs-файлу. Привожу рецепт, возможно пригодится еще кому-то.

1) создаем в makefile цель discovery:
CODE
#discovery target for Eclipse parser
.PHONY: discovery
discovery:
    $(CC) $(INCLUDES) $(CFLAGS) -E -P -v -dD '$(specs_file)'

если в CFLAGS есть правило для генерации файлов (.dep или .lst) - его надо вынести из CFLAGS в отдельный, скажем, DEPFLAGS и вставить в нужные места, где оно использовалось. Также полезно отключить чтение зависимостей при выполнении этой цели (занимает много времени на больших проектах):
CODE
ifeq (,$(findstring clean,$(MAKECMDGOALS)))
  ifeq (,$(findstring cleanall,$(MAKECMDGOALS)))
    ifeq (,$(findstring discovery,$(MAKECMDGOALS)))
-include $(shell mkdir $(DEPDIR) 2>/dev/null) $(wildcard $(DEPDIR)/*.d)
    endif
  endif
endif


Теперь в Eclipse, в Project->Propertities->C/C++ Build->Discovery Options выбираем:
  • Discovery profiles scope: 'Configuration-wide'
  • Automated discovery of paths and symbols, Discovery profile: 'GCC per project info profile'
  • Discovery profile options, ставим галочки:
    • 'Enable build output scanner info discovery'
    • 'Enable generate scanner info command'
  • В строку 'Compiler invocation command' вписываем: make
  • В строку 'Compiler invocation arguments' вписываем: specs_file=${plugin_state_location}/${specs_file} discovery
Жмем Automated discovery of paths and symbols -> Clear, OK, запускаем компиляцию проекта.

исправлено: заключил в апострофы '$specs_file', поскольку путь может быть с пробелами.
Непомнящий Евгений
Цитата(_Артём_ @ May 5 2012, 19:43) *
Запоминание буфера обмена на 5-10 элементов.

это умеет пунто-свитчер, причем для системного буфера, а не только внутри эклипса

Цитата
3) автоподсказчик иногда выбора не предлагает - сразу делает подстановку. Иногда это не нужно.

preferences\c/c++\editor\context assist - тут с галками поиграйтесь
_Артём_
Цитата(Непомнящий Евгений @ May 10 2012, 08:12) *
это умеет пунто-свитчер, причем для системного буфера, а не только внутри эклипса

Где эта функция включается и как выглядит результат?

Цитата(Непомнящий Евгений @ May 10 2012, 08:12) *
preferences\c/c++\editor\context assist - тут с галками поиграйтесь

Убрал галку Insert single proposal automaticaly. Помогло. Спасибо.
Непомнящий Евгений
Цитата(_Артём_ @ May 10 2012, 13:24) *
Где эта функция включается и как выглядит результат?

Где-то в настройках надо поставить галку "следить за буфером обмена" и назначить комбинацию клавиш. По нажатию вываливается окошко с последними содержаниями буфера обмена, выбираешь нужное - оно вставляется.
_Артём_
Цитата(Непомнящий Евгений @ May 10 2012, 14:22) *
Где-то в настройках надо поставить галку "следить за буфером обмена" и назначить комбинацию клавиш. По нажатию вываливается окошко с последними содержаниями буфера обмена, выбираешь нужное - оно вставляется.


Спасибо.
На первый взгляд нормально сделано.

P.S. Больше пяти лет PuntoSwitcher использую, а эту функцию не включал ни разу.sm.gif
P.S.2. Нашел буфер обмена для Эклипс: moreclipboard, но не понравилось - не так как-то.
Aaron
Цитата(Сергей Борщ @ May 8 2012, 11:45) *
  • создаем в makefile цель discovery
  • ...
  • В строку 'Compiler invocation command' вписываем: make
  • В строку 'Compiler invocation arguments' вписываем: specs_file=${plugin_state_location}/${specs_file} discovery
Жмем Automated discovery of paths and symbols -> Clear, OK, запускаем компиляцию проекта.
Вроде всё настроил, вроде даже работет. Но вот только не подхватывает файлы от тулчейна, например: c:\DevTools\arm_kgp_eabi_x86_32\arm-kgp-eabi\include\stdio.h
Цитата(Сергей Борщ @ May 3 2012, 21:46) *
У меня тоже пути разные, обнаружение использую и проекты перемещаемы. Что я делаю не так? wink.gif
Да! Что я делаю не так? sm.gif
До этого настройки были такими:
Нажмите для просмотра прикрепленного файла
и всё определялось нормально. Я подозреваю, что надо в makefile что-то ещё прописать для описанного выше варианта, чтобы пути тулчейна определялись с discovery?
Непомнящий Евгений
Цитата(Aaron @ May 11 2012, 11:55) *
Да! Что я делаю не так? sm.gif

Допишите к аргументам >1.txt 2>2.txt, посмотрите что окажется в этих файлах в том случае, когда работает и в том, когда нет
Сергей Борщ
QUOTE (Aaron @ May 11 2012, 10:55) *
Но вот только не подхватывает файлы от тулчейна, например: c:\DevTools\arm_kgp_eabi_x86_32\arm-kgp-eabi\include\stdio.h
Странно. У меня подхватывает.
QUOTE (Aaron @ May 11 2012, 10:55) *
До этого настройки были такими:
А почему там g++? Разве там не должен быть gcc, который при необходимости вызывает g++ и добавляет ему еще параметров от себя? Что у вас в makefile в качестве $(CC)? У меня arm-none-eabi-gcc, возможно дело в этом?
Для отладки этого процесса я добавлял в makefile такие строки:
CODE
#discovery target for Eclipse parser
.PHONY: discovery
discovery:
    echo "$(CC) $(INCLUDES) $(CFLAGS) -E -P -v -dD '$(specs_file)'" > kkk
    $(CC) $(INCLUDES) $(CFLAGS) -E -P -v -dD '$(specs_file)' >> kkk 2>&1
    $(CC) $(INCLUDES) $(CFLAGS) -E -P -v -dD $(specs_file)
и смотрел содержимое файла kkk

Возможно надо еще вручную сделать Index->rebuild.

Добавлено: проверил, что с gcc, что с g++ находит нормально.
Aaron
Цитата(Сергей Борщ @ May 11 2012, 14:15) *
Странно. У меня подхватывает.
А почему там g++? Разве там не должен быть gcc, который при необходимости вызывает g++ и добавляет ему еще параметров от себя? Что у вас в makefile в качестве $(CC)? У меня arm-none-eabi-gcc, возможно дело в этом?
Для отладки этого процесса я добавлял в makefile такие строки:...

Спасибо за помощь, но дело оказалось не в этом. Я давно заметил, что у меня эклипс очень не любит экспериментов с изменением настроек sm.gif он вчера вообще упал, перестал запускаться, пришлось настройки плагинов восстанавливать. Заново всё вбил - стал ругаться на мейкфайл с целью discovery, ещё раз все настройки по discovery удалил, почистил, вбил - теперь работает всё замечательно, вот такая у меня странная система.
А вообще, отличный рецепт! а то логика подсказывала, что нехорошо и в мейкфайле прописывать дефайны, и в C++ General -> Paths and symbols.
По поводу gcc/g++: ну я не такой мастер и знаток, как вы sm.gif просто мне казалось, раз я использую c++ в проектах, то и индексатор надо вызывать g++. и всё работало. И в качестве $(CC) у меня стоит gcc.
Cosmojam
Помогите с git + Eclipse.
Есть bare репозиторий на машине, куда есть доступ по ssh. Eclipse стоит на другой машине под виндой, используется msysgit и плагин jgit. Авторизация по ключам настроена и работает. git push из командной строки проходит, в QtCreator тоже работает. Но в еклипсе когда клацаю на репозитории -> push он спрашивает пароль. Если ввести пароль то всё ОК, но напрягает т.к. есть рабочая авторизация по ключам, которая в еклипсе почему-то не хочет работать. В чём может быть причина?
Dopler
Подскажите, пожалуйста.
Имею Eclipse Indigo + KGP + segger gdb под windows 7. Тип проекта - eternal makefile build.
Пытаюсь настроить отладку в Меню Run-Debug configurations. Вижу там такое окно:Нажмите для просмотра прикрепленного файла

Я так понимаю, что где-то на нем должна быть вкладка debuggers, в которой прописываются настройки сервера. Как ее получить?
Непомнящий Евгений
Цитата(Dopler @ May 21 2012, 12:13) *
Подскажите, пожалуйста.
Я так понимаю, что где-то на нем должна быть вкладка debuggers, в которой прописываются настройки сервера. Как ее получить?


Такое ощущение, что это окошко run configurations. В debug - картинка - жук, а не стрелка. Кроме того, в обоих слева есть список вариантов. А у вас его почему-то нет.
Нажмите для просмотра прикрепленного файла
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.