Привет всем.
Создаю проект на IAR v.4.12A, состоящий из многих С-файлов. Проблема возникает при линковке в один файл. Если быть точнее, то при попытке вызова battery_charge(); из main возникает ошибка Error[e46]: Undefined external "FAST_charge" referred in bc ( IAR projects\pribor\Release\Obj\bc.r90 ). В main подключены хидеры всех используемых модулей, в том числе и bc.h :
///// main.c ////////
#include "bc.h"
...........
void main (void)
{
battery_charge();
}
//// bc.c /////
#include "bc.h"
void battery_charge(void)
{
FAST_charge();
}
///// bc.h ////////
extern void FAST_charge(void);
extern void TRICKLE_charge(void);
extern void battery_charge(void);
//// NiMh.c ////////
#include "NiMH.h"
void FAST_charge (void)
{
}
//// NiMh.h //////
void FAST_charge(void);
Помогите найти ошибку, пожалуйста. И расскажите популярно как создавать многофайловые проекты, а то все приходится делать методом научого тыка.