AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
09.11.2022, 13:23
|
|
Временная регистрация
Регистрация: 23.11.2010
Сообщений: 50
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
arm-none-eabi-gcc, alias function, aliased to undefined symbol
день добрей, господа кладуны! :о)
исходные следующие
Код:
|
- arm-none-eabi
- arduino-DUE (платформа)
- __attribute__ alias |
пример-отладка
Код:
|
static int oldname(int x, int y) { return x + y; }
static int newname(int x, int y) __attribute__((alias("oldname")));
void setup(){;}
void loop() {;} |
согласно url
выдает ошибку
Код:
|
alias_function:6:12: error: 'int newname(int, int)' aliased to undefined symbol 'oldname'
static int newname(int x, int y) __attribute__((alias("oldname")));
^~~~~~~
exit status 1 |
первый раз выкрутился препроцессором
теперь надо однозначно алиас
п.с. спасибо, кидайтесь ... :о)
Последний раз редактировалось sunjob; 09.11.2022 в 15:39.
Причина: !
|
|
|
|
09.11.2022, 13:41
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 6,925
Сказал спасибо: 2,986
Сказали Спасибо 3,163 раз(а) в 2,147 сообщении(ях)
|
Re: arm-none-eabi-gcc, alias function, aliased to undefined symbol
Поскольку "arm-none-eabi", то вопрос для ветки ARM.
__________________
Экзорцист 40-го уровня.
|
|
|
|
09.11.2022, 14:05
|
|
Временная регистрация
Регистрация: 23.11.2010
Сообщений: 50
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: arm-none-eabi-gcc, alias function, aliased to undefined symbol
все может быть, все может статься... :о)
но процессор именно AVR SAM3X8E
по мне, пусть лежит там, где лежит, лишь-бы диалог складывался в сторону "общения" :о)
Последний раз редактировалось sunjob; 09.11.2022 в 15:44.
|
|
|
|
09.11.2022, 14:28
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 6,925
Сказал спасибо: 2,986
Сказали Спасибо 3,163 раз(а) в 2,147 сообщении(ях)
|
Re: arm-none-eabi-gcc, alias function, aliased to undefined symbol
В том то и дело, что AVR и "arm-none-eabi" исключают друг друга и непонятно, на что же отвечать.
__________________
Экзорцист 40-го уровня.
|
|
|
|
09.11.2022, 15:11
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 813 раз(а) в 590 сообщении(ях)
|
Re: arm-none-eabi-gcc, alias function, aliased to undefined symbol
Я аж загуглил: думал, что AVR32 на ARM. Но нет - RISC. Видать, ТС тупо не тем компилятором собрать пытается.
А еще впервые в жизни вижу __attribute__ alias. И вообще не понимаю, на кой черт это может пригодиться. В С есть макросы, в С++ - перегрузка. И на кой?
__________________
Союз Советских Социалистических Округов Северной Америки
|
|
|
|
09.11.2022, 15:40
|
|
Временная регистрация
Регистрация: 23.11.2010
Сообщений: 50
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
господа, соррииии!!! оправился... у нас ардуинья-дуе!!!
Сообщение от eddy
|
С есть макросы, в С++ - перегрузка
|
плюсы - отменяются, а в минусах... макросы .. гм... шибко обоюдо-острый струмент, легко порезаться... и не всегда удовлетворяет "сложившимся условиям" (данный случай), поэтому пытаюсь через алиас сделать!
алиас - самое то, что доктур прописл :о) если запуститься
p.s.
заработала-а-а-а... ( *)
Код:
|
#ifdef __cplusplus
extern "C" {
#endif
static int oldname(int x, int y);
static int newname(int x, int y);
#ifdef __cplusplus
}
#endif
static int oldname(int x, int y) { return x + y; }
static int newname(int x, int y) __attribute__((alias("oldname"))); |
всем большое спасибо за волшебные пендили
( *) - хотя странно, ведь реализация данного модуля на С++, следовательно "экранирование" не требуется (в проекте используются одновременно С и С++)
Последний раз редактировалось mike-y-k; 09.11.2022 в 20:39.
Причина: 6.6
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:18.
|
|