Main Site Documentation

Lwip compiling errors while building FEZ-Cerb40 firmware


#1

Hi everybody.

We just tried to build FEZ-Cerb40 firmware with following environment:

  • PK 4.2 RTM QFE1
  • Keil MDK 4.20

but we get follwing 2 errors:


"c:\MicroFrameworkPK_v4_2\DeviceCode\pal\lwip\lwip_1_3_2\src\api\tcpip.c", line 548: Error:  #20: identifier "UINT_MAX" is undefined
        if (netifapimsg->msg.sem == SYS_SEM_NULL) {
                                    ^

and

"c:\MicroFrameworkPK_v4_2\DeviceCode\pal\lwip\lwip_1_3_2\src\api\api_lib.c", line 82: Error:  #20: identifier "UINT_MAX" is undefined
          LWIP_ASSERT("conn has no op_completed", conn->op_completed != SYS_SEM_NULL);
          ^

The undefined identifier SYS_SEM_NULL is actually defined in:

C:\MicroFrameworkPK_v4_2\DeviceCode\pal\lwip\lwip_1_3_2\contrib\ports\arm\include\arch\sys_arch.h

as follows:

#define SYS_SEM_NULL  ((sys_sem_t)UINT_MAX)

which refers to UINT_MAX defined in included limits.h compiler standard include (in C:\Keil420\ARM\RV31\INC\limits.h) as follows:


 #define UINT_MAX  0xffffffffU
    /* maximum value for an object of type unsigned int */

So why according to you it seems that limits.h isn’t actually included?

Thanks!