[an error occurred while processing this directive]
скарее всего дело в этом ...
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено подозревающий 19 октября 2005 г. 15:58
В ответ на: VisualDSP++, проблемы... отправлено <font color=gray>&Незнайка</font> 19 октября 2005 г. 14:48

как вы в асм имя функции пишите ?
что то типа
_имя

откуа "_" взялось? - ага Цэ так требует
так вот в Цэ++ другое требование к формированию имени - зависит от числа параметров и т.д.

бороться опять таки просто

в *.h файле для вашей асм функции написать надо вот так


// asm function
#ifdef __cplusplus
extern "C" void asm_signals_shift_arm9(SIGNALS_SHIFT_CONTEXT *signals_shift_context);
#endif

ну или более изощренно - вот так:

#ifdef __cplusplus
extern "C" {
#endif

s32 aec_init(AEC_CONTEXT *aec_context, u32 buffer_size_u8);
s32 aec_close(AEC_CONTEXT *aec_context);
void aec_process_fes(void *_aec_context_, s16 *p_data);
void aec_process_nes_d(void *_aec_context_, s16 *p_data, s16 **p_result);
s32 aec_block_process(AEC_CONTEXT *aec_context, s16 *fes, s16 *nes, u32 len);

#ifdef __cplusplus
}
#endif

и теперь компилятор будет знать что имя надо формировать по старинке и так и сделает - а потом линковщик найдет правильно все

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru