New set of problems

Getting back into the Arduino after e few months exploring other area, I am faced with a problem for which I am trying to determine the best solution:

Arduino: 1.6.7 (Mac OS X), Board: "Arduino/Genuino Uno"
/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/arduino-builder -dump-prefs -logger=machine -hardware "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware" -hardware "/Users/noelkuck1/Library/Arduino15/packages" -tools "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/tools-builder" -tools "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/tools/avr" -tools "/Users/noelkuck1/Library/Arduino15/packages" -built-in-libraries "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/libraries" -libraries "/Users/noelkuck1/Documents/Arduino/libraries" -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10607 -build-path "/var/folders/m6/_g9ydm_s5tv0m9v51tfpbtt80000gp/T/build96522d2befb69ed13ea264574b5a0f96.tmp" -warnings=none -prefs=build.warn_data_percentage=75 -verbose "/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/examples/DhcpAddressPrinter/DhcpAddressPrinter.ino"

[A number of these]
/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/arduino-builder -compile -logger=machine -hardware "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware" -hardware "/Users/noelkuck1/Library/Arduino15/packages" -tools "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/tools-builder" -tools "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/tools/avr" -tools "/Users/noelkuck1/Library/Arduino15/packages" -built-in-libraries "/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/libraries" -libraries "/Users/noelkuck1/Documents/Arduino/libraries" -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10607 -build-path "/var/folders/m6/_g9ydm_s5tv0m9v51tfpbtt80000gp/T/build96522d2befb69ed13ea264574b5a0f96.tmp" -warnings=none -prefs=build.warn_data_percentage=75 -verbose "/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/examples/DhcpAddressPrinter/DhcpAddressPrinter.ino"
"/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -
DARDUINO_ARCH_AVR   "-I/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/variants/standard" "/var/folders/m6/_g9ydm_s5tv0m9v51tfpbtt80000gp/T/build96522d2befb69ed13ea264574b5a0f96.tmp/sketch/DhcpAddressPrinter.ino.cpp" -o "/dev/null"
"/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -
I/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/variants/standard" "-I/Users/noelkuck1/Documents/Arduino/libraries/utility" "-I/Users/noelkuck1/Documents/Arduino/libraries/SPI" "-I/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0" "/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.cpp" -o "/dev/null"
"/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-

I/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/variants/standard" "-I/Users/noelkuck1/Documents/Arduino/libraries/SPI" "-I/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0" "-I/Users/noelkuck1/Documents/Arduino/libraries/utility" "-I/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/utility" "/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp" -o "/var/folders/m6/_g9ydm_s5tv0m9v51tfpbtt80000gp/T/build96522d2befb69ed13ea264574b5a0f96.tmp/libraries/EthernetV1_0/EthernetV1_0.cpp.o"
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp: In member function 'void EthernetClass::begin(uint8_t*, IPAddress, IPAddress, IPAddress, IPAddress)':
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:64:39: error: no matching function for call to 'W5100Class::setIPAddress(IPAddress::<anonymous union>&)'
   W5100.setIPAddress(local_ip._address);

                                       ^
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:64:39: note: candidate is:
In file included from /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:1:0:
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:410:6: note: void W5100Class::setIPAddress(uint8_t*)
 void W5100Class::setIPAddress(uint8_t *_addr) {
      ^
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:410:6: note:   no known conversion for argument 1 from 'IPAddress::<anonymous union>' to 'uint8_t* {aka unsigned char*}'
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:65:38: error: no matching function for call to 'W5100Class::setGatewayIp(IPAddress::<anonymous union>&)'
   W5100.setGatewayIp(gateway._address);

                                      ^
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:65:38: note: candidate is:
In file included from /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:1:0:
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:386:6: note: void W5100Class::setGatewayIp(uint8_t*)
 void W5100Class::setGatewayIp(uint8_t *_addr) {
      ^
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:386:6: note:   no known conversion for argument 1 from 'IPAddress::<anonymous union>' to 'uint8_t* {aka unsigned char*}'
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:66:38: error: no matching function for call to 'W5100Class::setSubnetMask(IPAddress::<anonymous union>&)'
   W5100.setSubnetMask(subnet._address);

                                      ^
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:66:38: note: candidate is:
In file included from /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:1:0:
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:394:6: note: void W5100Class::setSubnetMask(uint8_t*)
 void W5100Class::setSubnetMask(uint8_t *_addr) {
      ^
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:394:6: note:   no known conversion for argument 1 from 'IPAddress::<anonymous union>' to 'uint8_t* {aka unsigned char*}'
Multiple libraries were found for "SPI.h"
 Used: /Users/noelkuck1/Documents/Arduino/libraries/SPI
 Not used: /Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI
Using library SPI in folder: /Users/noelkuck1/Documents/Arduino/libraries/SPI (legacy)
Using library EthernetV1_0 in folder: /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0 (legacy)
Using library utility in folder: /Users/noelkuck1/Documents/Arduino/libraries/utility (legacy)
exit status 1
Error compiling.

I figure that it has to do with some installation issues due to some OS changes, but can someone suggest a clean solution? Thanks in advance.

It looks like you've got multiple versions of several libraries, including SPI, installed, and the IDE is having trouble picking the right one?

It looks to me like that's the root cause here. The errors I'm seeing are cases where function calls aren't matching the signature, suggestive of an incompatible version of one or more libraries being used.

Thanks, that is what I discovered, but I am not comfortable about sorting them out or rearranging/deleting certain ones to make this work. Any suggestions? Can I just delete and reinstall the IDE, then reinstall the libraries? If so, I know where they should go, but there are some that seemingly get installed with a new IDE install.

Here is the latest after my attempt to clean things up. Am I getting any closer?

/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp: In member function 'void EthernetClass::begin(uint8_t*, IPAddress, IPAddress, IPAddress, IPAddress)':
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:64:39: error: no matching function for call to 'W5100Class::setIPAddress(IPAddress::<anonymous union>&)'
   W5100.setIPAddress(local_ip._address);

                                       ^
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:64:39: note: candidate is:
In file included from /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:1:0:
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:410:6: note: void W5100Class::setIPAddress(uint8_t*)
 void W5100Class::setIPAddress(uint8_t *_addr) {
      ^
Multiple libraries were found for "SPI.h"
 Used: /Users/noelkuck1/Documents/Arduino/libraries/SPI
 Not used: /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:410:6: note:   no known conversion for argument 1 from 'IPAddress::<anonymous union>' to 'uint8_t* {aka unsigned char*}'
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:65:38: error: no matching function for call to 'W5100Class::setGatewayIp(IPAddress::<anonymous union>&)'
   W5100.setGatewayIp(gateway._address);

                                      ^
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:65:38: note: candidate is:
In file included from /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:1:0:
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:386:6: note: void W5100Class::setGatewayIp(uint8_t*)
 void W5100Class::setGatewayIp(uint8_t *_addr) {
      ^
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:386:6: note:   no known conversion for argument 1 from 'IPAddress::<anonymous union>' to 'uint8_t* {aka unsigned char*}'
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:66:38: error: no matching function for call to 'W5100Class::setSubnetMask(IPAddress::<anonymous union>&)'
   W5100.setSubnetMask(subnet._address);

                                      ^
/Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:66:38: note: candidate is:
In file included from /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0/EthernetV1_0.cpp:1:0:
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:394:6: note: void W5100Class::setSubnetMask(uint8_t*)
 void W5100Class::setSubnetMask(uint8_t *_addr) {
      ^
/Users/noelkuck1/Documents/Arduino/libraries/utility/w5200.h:394:6: note:   no known conversion for argument 1 from 'IPAddress::<anonymous union>' to 'uint8_t* {aka unsigned char*}'
Using library SPI in folder: /Users/noelkuck1/Documents/Arduino/libraries/SPI (legacy)
Using library EthernetV1_0 in folder: /Users/noelkuck1/Documents/Arduino/libraries/EthernetV1_0 (legacy)
Using library utility in folder: /Users/noelkuck1/Documents/Arduino/libraries/utility (legacy)
exit status 1
Error compiling.

OK, strange but it appears that other sketches compile fine, just not those associated with ethernet code. I will continue to verify this, but so far everything else seems to work fine. Suggestions? Thanks for the help.

Is there a reason why you're using the EthernetV1_0 library? That's pretty outdated. I think it's been replaced by the EthernetV2_0 library: GitHub - Seeed-Studio/Ethernet_Shield_W5200: Seeed Studio Ethernet Shield V2.0 Library which I have used successfully. I have also used this one: GitHub - per1234/EthernetMod at W5x00 with the W5200.

Another strange thing I see is the utility library. The w5200.h file is supposed to be accessed from the utility folder inside of the EthernetV1_0 folder but you have a utility folder at /Users/noelkuck1/Documents/Arduino/libraries/utility which is being used instead.

Another potential issue is it appears you removed the SPI library from /Users/noelkuck1/Documents/Arduino/libraries/SPI for the second error log you posted. Is there a reason why you have the SPI library installed at /Users/noelkuck1/Documents/Arduino/libraries/SPI. Maybe you needed to use an older version than the one included with the Arduino IDE? Having the SPI library installed in your /Users/noelkuck1/Documents/Arduino/libraries/ can cause you problems if you use other boards packages such as non-AVR boards or 3rd party hardware packages because often these packages will have their own hardware specific versions of the SPI library included but the SPI library you have installed at /Users/noelkuck1/Documents/Arduino/libraries/ will override that library.

Thank you for your detailed review. As I mentioned, some of my files got rearranged incorrectly. What I need to determine is the best way to get everything back where they belong. Should I delete all my ethernet files and reinstall?

Unless there is a good reason for you to continue using the EthernetV1_0 library and the /Users/noelkuck1/Documents/Arduino/libraries/SPI library I'd advise you to do the following:

  • Back up the /Users/noelkuck1/Documents/Arduino/libraries/SPI library and remove it from the libraries folder
  • Reinstall the /Users/noelkuck1/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI. If you deleted it then you can reinstall the Arduino IDE to get it back.
  • Install one of the two newer Ethernet libraries that I posted links to previously(Assuming you're using a W5200 based Ethernet shield/module).
  • Run the DHCPAddressPrinter sketch that is in the File > Examples menu for the newer Ethernet library.

Let me know how that goes or if you have reasons why you shouldn't follow this course.

One more thing I forgot:

  • Back up /Users/noelkuck1/Documents/Arduino/libraries/utility and remove it from the libraries folder.

:smiley: Thank you both VERY much! Followed your suggestions. All is good now.