Пытаюсь скомпилировать opentcp-arm7-src.zip. Возникла проблема с объявлением глобальной структуры.
Подскажите пожалуйста, а то совсем замучался. Методом тыка нашел комбинацию, которая приемлема для файла main.c, но ошибка возникает в файле tcp.c
Листинг приведен ниже. Компилятор KEIL.
--------------------------------------------------------------------------------------------- file: datatypes.h ---------------------------------------------------------------------------------------------
#ifndef INCLUDE_DATATYPES_H #define INCLUDE_DATATYPES_H
struct localmach { int localip; char localHW[6]; int defgw; int netmask; };
typedef struct localmach localmachine_t;
#endif //INCLUDE_DATATYPES_H
--------------------------------------------------------------------------------------------- file: main.c ---------------------------------------------------------------------------------------------
#include "datatypes.h"
localmachine_t localmachine;
int main (void) {
localmachine.localHW[0] = 0x11; localmachine.localHW[1] = 0x22; localmachine.localHW[2] = 0x33; localmachine.localHW[3] = 0x44; localmachine.localHW[4] = 0x55; localmachine.localHW[5] = 0x66;
while (1) {
}
}
--------------------------------------------------------------------------------------------- file: tcp.c ---------------------------------------------------------------------------------------------
#include "datatypes.h"
extern localmachine_t localmachine; ^^^^^^^^^^^^^^^^^^^^^^^^^^ ........
Ошибка: "TCP.C(124): error C53: redefinition of 'localmachine': different compound types"
Это особенность Keil? Или я делаю что-то не так?
|