Pages: [1]   Go Down
Author Topic: Error Compiling Message  (Read 1743 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I just bought some ENC28J60 Internet Shields and hooked one up to an Uno, swapped the libraries, loaded one of the Example programs under Ethernet, and am getting an Error Compiling Message with no specific information that could help me fix the program.  Any ideas what is going on?
Logged

Global Moderator
Boston area, metrowest
Offline Offline
Brattain Member
*****
Karma: 538
Posts: 27089
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

"Any ideas what is going on? "
Not without seeing the message.
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

OK, so here it is. I did not know how to past a screenshot in here.  The program is the Example called WebClient.

Thanks


Error Compiling.

In file included from C:\Users\Host Guest\Desktop\arduino-1.0.1\libraries\Ethernet/Ethernet.h:5,
                 from WebClient.cpp:1:
C:\Users\Host Guest\Desktop\arduino-1.0.1\libraries\Ethernet/Client.h:22: error: conflicting return type specified for 'virtual void Client::write(uint8_t)'
C:\Users\Host Guest\Desktop\arduino-1.0.1\hardware\arduino\cores\arduino/Print.h:48: error:   overriding 'virtual size_t Print::write(uint8_t)'
C:\Users\Host Guest\Desktop\arduino-1.0.1\libraries\Ethernet/Client.h:24: error: conflicting return type specified for 'virtual void Client::write(const uint8_t*, size_t)'

C:\Users\Host Guest\Desktop\arduino-1.0.1\hardware\arduino\cores\arduino/Print.h:50: error:   overriding 'virtual size_t Print::write(const uint8_t*, size_t)'
In file included from C:\Users\Host Guest\Desktop\arduino-1.0.1\libraries\Ethernet/Ethernet.h:6,
                 from WebClient.cpp:1:
C:\Users\Host Guest\Desktop\arduino-1.0.1\libraries\Ethernet/Server.h:16: error: conflicting return type specified for 'virtual void Server::write(uint8_t)'
C:\Users\Host Guest\Desktop\arduino-1.0.1\hardware\arduino\cores\arduino/Print.h:48: error:   overriding 'virtual size_t Print::write(uint8_t)'
C:\Users\Host Guest\Desktop\arduino-1.0.1\libraries\Ethernet/Server.h:18: error: conflicting return type specified for 'virtual void Server::write(const uint8_t*, size_t)'
C:\Users\Host Guest\Desktop\arduino-1.0.1\hardware\arduino\cores\arduino/Print.h:50: error:   overriding 'virtual size_t Print::write(const uint8_t*, size_t)'
Logged

Global Moderator
Boston area, metrowest
Offline Offline
Brattain Member
*****
Karma: 538
Posts: 27089
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

What you posted is fine - screen shots are difficult to see.
I don't know anything about that shield or the library, I am sure someone with experience with it will help out.
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 613
Posts: 49343
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I just bought some ENC28J60 Internet Shields and hooked one up to an Uno, swapped the libraries, loaded one of the Example programs under Ethernet
You have to explain, in a lot more detail, exactly what "swapped the libraries" means.

You should NOT have deleted or replaced ANY of the libraries in C:\Users\Host Guest\Desktop\arduino-1.0.1\libraries. That is where the Arduino-provided libraries go. Though why the IDE was installed on the desktop is mystery.

User downloaded libraries, such as WebClient and EtherCard (the library for the ENC28J60 cards) go in the libraries folder (you may need to create it) of the sketch directory.

The messages in the last post indicate that Client.h has not been updated for post 1.0 use. The messages are pretty explicit about what needs to be changed.

Quote
Client.h:22: error: conflicting return type specified for 'virtual void Client::write(uint8_t)'
The file name is specified, the line number that the error is on, and exactly what the problem is (void should be size_t). You'll need to edit the .h file, and the .cpp file, to change the type, and to add a return statement to the function (return the number of characters actually written, usually 1).
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

By swapped the libraries I mean I went into the libraries/Ethernet folder and swapped the contents with the files provided by the board manufacturer....I noticed they use the old Client versus the new Ethernet Client, but that is what was provided by the manufacturer of the board.  Am I to use the new post  1.0 files?


Thanks for the comments so far. I am going to try to troubleshoot this now....btw. my IP address comes up as 0.0.0.0 on the serial monitor.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I looked at the cop and h files and decided to take a break while I gain a bit more confidence because I have no experience with this yet. However, I guess I don't understand why I would need to edit a file I found online which is supposed to be from the manufacturer......
Logged

Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 613
Posts: 49343
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
However, I guess I don't understand why I would need to edit a file I found online which is supposed to be from the manufacturer
For two reasons. First, you are not following the proper library installation process. User libraries, which include the ones that are for the non-standard board you are using, do NOT go in the same directory as the libraries provided by Arduino.

Second, the library you are trying to use was fine for 0023 and earlier. It has not been updated for 1.0. If you have a problem with that, take it up with the vendor of your board, who supplied the old library.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok, thanks. I will now take some time to try to read up on how to install nonstandard libraries, because I thought I followed a particular online tutorial to the tee. 

By the way, this Arduino , this is a great system. I already designed a program to turn my dehumidifier on and off to save energy and keep a certain ambient humidity.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

So I still have no success. I don't know where to put the arduino executable and I don't know where to put the libraries after reading a lot of tutorials. Everyone seems to do it differently. Can anyone help?
Logged

Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 613
Posts: 49343
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I don't know where to put the arduino executable
Anywhere you want. When you install the Arduino application, it asks you for the parent directory name. It then creates a folder there called arduino-x.x.x, where x.x.x is the version.

In the folder that it creates is a libraries folder where the libraries that Arduino supplies go. It is NOT where your libraries go.

When you run the arduino.exe application, and create a sketch, it is stored somewhere. You can see where by looking at the File + Preferences dialog.

In that folder/directory. you should create a libraries folder, and install libraries that you download there.

If you continue to have difficulties, uninstall 1.0.1, and install 1.0. The 1.0 version does consider missing include files to be a fatal error, which makes troubleshooting so much easier.

If that still doesn't work, running a real OS might be necessary.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thank you very much.  That let me focus my efforts better.
Logged

Pages: [1]   Go Up
Jump to: