This error appears when I compile an example:
In file included from /home/luis/Escritorio/arduino-1.5.3/libraries/eHealth/eHealthDisplay.cpp:33:0:
/home/luis/Escritorio/arduino-1.5.3/libraries/eHealth/eHealthDisplay.h:37:27: fatal error: avr/pgmspace.h: No such file or directory
That is an AVR- specific file. avr/pgmspace.h, if I remember correctly, is usually used to store constants in program memory to save precious RAM on an Arduino.
Unless you port this library for Galileo it's not gonna compile for you (I haven't seen the library, but it may not be that difficult since on Galileo we have 256MB of DDR3, and don't need to worry about this problem).
Are you using the eHealth medical sensor kit from cookinghacks?
You will see this problem crop up again, since a lot of shield libraries use AVR specific code. We simply didn't have enough time or people to port the massive volume of shield libraries.
If you're an engineer from cookinghacks, then you shouldn't find it too hard to port this code for Galileo... or at least find somebody there who can.
Hi Luis Martin,
I have an Intel Galileo board and the ehealth kit which I would like to use with it.
Is the only error that you found related to avr/pgmspace.h?
A solution to this problem has been posted here
D you know if I try this will it work?
+1 on KurtE's answer, which is similar to one I posted on another forum a couple of days ago:
Here's perhaps a better solution that avoids having to doctor third-party libraries: use an alternative implementation of pgmspace.h. Here is a version borrowed from the Teensy3 Arduino distribution. The CPU in the Teensy3, like the x86, doesn't have separate instruction/data address spaces--the so-called "Harvard Architecture" of the AVR micros. So its implementation of pgmspace.h simply casts it all away, making pgm_read_byte_near, for example, a simple pointer dereference.
- Create a new folder "avr" under .../hardware/arduino/x86/cores/arduino/avr.
- Grab the pgmspace.h file from http://github.com/mikalhart/galileo-Pgmspace.h/ and put it in the new avrfolder.
- Restart the Arduino IDE.
At this point you should be able to compile code that depends on #include <avr/pgmspace.h>
Hey I just saw libelium have come out with a bunch of Galileo libraries for some of their devices on cooking-hacks!
That's awesome. LuisMartin, did you have any part in developing this?