Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Eclipse + C/C++ compiler
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
_Артём_
Компилятор не GNU - любой, в общем случае.
Как при этом правильнее настраивать Eclipse ?
Какого типа проект создавать?
Или лучше другую IDE выбрать? Какую тогда?
swisst
Цитата(_Артём_ @ Mar 14 2014, 14:07) *
Компилятор не GNU - любой, в общем случае.
Как при этом правильнее настраивать Eclipse ?
Какого типа проект создавать?
Или лучше другую IDE выбрать? Какую тогда?


я Eclipse с Keil.c51 пользую для хобби. на работе для коммерческого проекта прикрутил, попробовал - работает - принял на заметку.
причина использования - uVision Keil не поддерживает всякие плюшки по работе с кодом. Тип проекта в Еклипсе - Makefile Project with Existing Code.
Из того, что не получилось - среда ругается на реализацию функции ISR.

Код
void Timer_Overflow () interrupt 6{}
_Артём_
Цитата(swisst @ Mar 14 2014, 17:39) *
Тип проекта в Еклипсе - Makefile Project with Existing Code.
Из того, что не получилось - среда ругается на реализацию функции ISR.
Код
void Timer_Overflow () interrupt 6{}

А в makefile что пишете? Компилируете как по ошибкам Эклипса навигацию делает? И по исходникам есть навигация?
Aaron
Цитата(_Артём_ @ Mar 14 2014, 18:20) *
А в makefile что пишете? Компилируете как по ошибкам Эклипса навигацию делает? И по исходникам есть навигация?


Я для поддержки невоспринимаемого синтаксиса (то есть чтобы банально не отображался код как ошибки) прикручиваю к проекту файл compiler_definitions.h, который на уровне makefile исключаю из процесса компиляции, чтобы компиляция верно проходила. Ну и исходники чуток подправить придётся всё равно.
В приведённом примере добавить в этот файл строчку и сделать типа такого:

void Timer_Overflow () interrupt (6) {} // круглые скобки не влияют на логику, зато позволяют использовать макросы
...
#ifndef PROJECT_COMPILE // определяется в makefile на этапе компиляции
#define interrupt(x)
#endif

Конечно, файл можно заточить под разные компиляторы и сделать универсальным, если оно вам надо wink.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.