So i have had reports that the following EthernetInterface/mbed-rtos does not compile with mbed 2.0 versions from V130 onwards.
Original issue:
https://developer.mbed.org/questions/76329/Compiler-errors-with-mbed-V131-v132-and-/
I can confirm this is correct.
To recreate the issue:
Import: https://developer.mbed.org/teams/NXP/code/Ethernet_UDP_client/?platform=FRDM-K64Fhttps://developer.mbed.org/teams/NXP/code/Ethernet_UDP_client/?platform=FRDM-K64F
Select "mbed" revision V131/V132
Receive errors:
Error: Struct "_enet_handle" has no field "rxBdDirty" in "EthernetInterface/lwip-eth/arch/TARGET_Freescale/k64f_emac.c", Line: 86, Col: 19
Error: Struct "_enet_handle" has no field "rxBdDirty" in "EthernetInterface/lwip-eth/arch/TARGET_Freescale/k64f_emac.c", Line: 89, Col: 19
Regards,
Andrea
Thanks for the reporting. we shall look at this.
I tracked down the commit that updated KSKD and removed that structure member : 931da516a974a0f3d3aaefdb47. This commit needs to be reflected to EthernetInterface - 177eaff8475bf07fda2fded.
cc @adbridge
@andcor02 @adbridge any update?
@bridadan @adbridge
Just checked this, updating to v133 fixed the issues. Closing this. Thanks!
Just rechecked all of this, will not compile with all libraries updated to revisions:
I get two compiler errors:
mbed.lbr - v133 & v134
mbed-rtos = v123
EthernetInterface = v54
in file: EthernetInterface/lwip-eth/arch/TARGET_Freescale/k64f_emac.c lines 86 and 89 are the problem
@andcor02 Do you have a published program you can point us at so we can reproduce it?
@bridadan
To recreate the issue:
Import: https://developer.mbed.org/teams/NXP/code/Ethernet_UDP_client/?platform=FRDM-K64Fhttps://developer.mbed.org/teams/NXP/code/Ethernet_UDP_client/?platform=FRDM-K64F
Update all libraries to latest revision :)
@andcor02 thanks, I was able to reproduce! @0xc0170 Any ideas for a fix?
I got this problem too when I'm using EthernetInterface library with mbed v154 and mbed-rtos v125
To resolve this issued I have found 2 dumb solutions:
the problem occur because there is no rxBdDirty in _enet_handle_t struct. You can find this struct initiation here
ARM Internal Ref: MBOTRIAGE-380
Thanks @reanovich for sharing. Those 2 are actually good proposals. The rxBdDirty is not used anywhere, can be removed from there with no change to the result.
As these are legacy libraries (updated, reworked network libraries replaced those), we will close this as won't fix.