"struct "os_thread_def" has no field "stack_pointer"

17 Aug 2012

I tried recompiling some code this morning that was working prior to the move yesterday. What compiled correctly now gives me the following error:

"struct "os_thread_def" has no field "stack_pointer"" in file "EthernetInterface/lwip-sys/archsys_arch.c", Line: 429, Col: 11

I've removed the EthernetInterface library and added it again to see if that clears the error but it didn't work.

I've using the latest release of EthernetInterface.

Regards,

Joe

17 Aug 2012

Hi Joe,

Joe Staton wrote:

"struct "os_thread_def" has no field "stack_pointer"" in file "EthernetInterface/lwip-sys/archsys_arch.c", Line: 429, Col: 11

I've removed the EthernetInterface library and added it again to see if that clears the error but it didn't work.

I've using the latest release of EthernetInterface.

This is an incompatibility of the latest version of the EthernetInterface library with an old version of the mbed-rtos library.

You should be able to fix this problem simply updating your mbed-rtos library to the latest release.

Cheers, Emilio

17 Aug 2012

Hi Emilio,

This was the second thing I tried. I'm running revision 5 of mbed-rtos (2 weeks, 2 days old). If I try to force the library to the latest version again I get a warning message saying:

'Unable to update library to revision: /DataLogger/mbed-rtos/rtos Unable to update library to revision: /DataLogger/mbed-rtos/rtx'

Trying to move between revision of mbed-rtos kept giving the same issue. I removed the mbed-rtos library and re-imported it. Now I get the following error:

"invalid redeclaration of type name "BOOL" (declared at line 27 of "/workspaces/DataLogger/src/FATFileSystem/integer.h")" in file "mbed-rtos/rtxos_tcb.h", Line: 14, Col: 27

Regards,

Joe

17 Aug 2012

Hi Joe,

Joe Staton wrote:

"invalid redeclaration of type name "BOOL" (declared at line 27 of "/workspaces/DataLogger/src/FATFileSystem/integer.h")" in file "mbed-rtos/rtxos_tcb.h", Line: 14, Col: 27

It seems that both the new version of the mbed-rtos and the FATFileSystem library you are using are defining a BOOL type.

As a quick fix, I would suggest you to protect the additional definition of BOOL in FATFileSystem/integer.h with a "#ifndef" macro.

HTH, Emilio