chipKIT® Development Platform

Inspired by Arduino™

chipKIT Max 32 compile errors Wifi101

Created Tue, 06 Nov 2018 02:39:50 +0000 by bisraelwalter


bisraelwalter

Tue, 06 Nov 2018 02:39:50 +0000

Hello,

I'm trying to compile the WiFi101 for the chipKit Max 32 and get the following errors below. It looks like there is a misspelled function of "memcpy" for the second error. I can fix the spelling and it removes the error but I'm not sure if it is really misspelled or it can't see the declaration. The no member error doesn't make sense because it allows for the instantiation of the class object 'IPAddress' but it does not see the member function of 'fromString' and it is clearly there. I've tried the newest WiFi101 build of 15.2, all the way down to 9.1 with the same problem. This library is the only library that is doing this as all the other examples in the Arduino IDE 1.8.7 will compile. I've tried on different PC's, uninstalled and reinstalled with the same error below. The WiFi101 examples will compile against any arduino board but none of the other chipKits. Even clearing out both of these errors, I still get java errors when trying to import into MPLAB X IDE which is where I ultimately want the code. I can compile any of the the other examples for the Max32 and it works fine importing it into MPLAB X IDE.

Arduino: 1.8.7 (Windows 10), Board: "chipKIT MAX32, Custom / Disabled" C:\Users\Brandon_Jacquie\Documents\Arduino\libraries\WiFi101\src\WiFi.cpp: In member function 'int WiFiClass::hostByName(const char*, IPAddress&)': C:\Users\Brandon_Jacquie\Documents\Arduino\libraries\WiFi101\src\WiFi.cpp:683:14: error: 'class IPAddress' has no member named 'fromString' if (aResult.fromString(aHostname)) { ^ C:\Users\Brandon_Jacquie\Documents\Arduino\libraries\WiFi101\src\WiFiMDNSResponder.cpp: In member function 'bool WiFiMDNSResponder::parseRequest()': C:\Users\Brandon_Jacquie\Documents\Arduino\libraries\WiFi101\src\WiFiMDNSResponder.cpp:155:61: error: 'memcmp_P' was not declared in this scope if (memcmp_P(request, expectedRequestHeader, HEADER_SIZE) == 0 && // request header match


majenko

Tue, 06 Nov 2018 10:01:50 +0000

Looks like we may have missed one of the progmem aliases. Not having the concept of progmem we have had to manually add aliases for these strange _P variant functions.

They just alias to the non _P variant so for now removing the _P is fine.

I'll add the alias in a PR to the core.


majenko

Tue, 06 Nov 2018 10:58:43 +0000

Ok - I have added all the missing macros. There were quite a few.

The next core release will fix it. For now, though, you can find the file "avr/pgmspace.h" within the chipKIT core files and replace it with the attached.