Impossible de compiler un programme

Salut à tous,

Après programmation de mes premiers programmes avec votre aide j'ai à nouveau des problèmes mais cette fois-ci de compilation. Pour être sur de mon coup, j'ai testé les programmes en exemple dans le programme arduino (ceux pour faire fonctionner une horloge et un capteur de T via la lib onewire). J'ai même poussé en ré-installant tout mon système linux et vu que cela ne fonctionnait pas j'ai aussi installé un dual boot pour tester sous windows 8. Le résultat est le même, impossible de compiler les programmes.

J'ai ce type d'erreur :

Pour le programme "Readtest" (test de l'horloge)

/home/eric/sketchbook/libraries/Time/DateStrings.cpp:41:22: error: variable ‘monthNames_P’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
/home/eric/sketchbook/libraries/Time/DateStrings.cpp:58:20: error: variable ‘dayNames_P’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
/home/eric/sketchbook/libraries/Time/DateStrings.cpp:59:24: error: variable ‘dayShortNames_P’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’

Pour le programme "DS18x20"

In file included from /usr/share/arduino/hardware/arduino/cores/arduino/Arduino.h:192:0,
                 from /home/eric/sketchbook/libraries/OneWire/OneWire.cpp:86:
/usr/share/arduino/hardware/arduino/cores/arduino/WString.h:116:83: error: declaration of C function ‘StringSumHelper& operator+(const StringSumHelper&, const char*)’ conflicts with
/usr/share/arduino/hardware/arduino/cores/arduino/WString.h:115:27: error: previous declaration ‘StringSumHelper& operator+(const StringSumHelper&, const String&)’ here
/usr/share/arduino/hardware/arduino/cores/arduino/WString.h:117:73: error: declaration of C function ‘StringSumHelper& operator+(const StringSumHelper&, char)’ conflicts with
/usr/share/arduino/hardware/arduino/cores/arduino/WString.h:116:27: error: previous declaration ‘StringSumHelper& operator+(const StringSumHelper&, const char*)’ here
/usr/share/arduino/hardware/arduino/cores/arduino/WString.h:117:73: error: declaration of C function ‘StringSumHelper& operator+(const StringSumHelper&, char)’ conflicts with
/usr/share/arduino/hardware/arduino/cores/arduino/WString.h:115:27: error: previous declaration ‘StringSumHelper& operator+(const StringSumHelper&, const String&)’ here...... message trop long

Je vous avoue que je suis dans les choux pour m'en sortir et que je ne vois pas le bout depuis 3 jours :~

Si quelqu'un a un tuyau....

Bonjour,

Pour la 1er série d’erreurs c’est tout con : il manque un juste “const” devant les variables en question.
Pour la 2nd série d’erreurs je sait pas.

bonjour,
un début de réponse peut être
http://code.google.com/p/arduino/issues/detail?id=704

quelle version de lib onwire utilises tu?

Merci pour ces infos.

Pour le premier programme, je vais tester mais c'est étonnant que ce programme founi avec l'appli arduino ne fonctionne pas.

Pour le second, je vais regarder le lien, ce qui m'étonne c'est que la seule manière que j'ai trouvé de compiler avec cette librairie (téléchargée sur le net, peut-être pas la bonne, je ne savais pas qu'il y en avait plusieurs) c'était d'utiliser un vieux pc sous xp (mais là, le pc a rendu l'âme et donc il faut que je comprenne ce qui ne fonctionne pas).

allez zou, au boulot :slight_smile:

Pour l’horloge, j’ai fait autrement pour tester car je ne sais pas très bien comment faire, les variables en question (celles où il faut mettre “const” avant) sont dans les fichiers de la librairie car ce n’est pas mon programme qui les génère. Ne sachant pas très bien par où commencer pour modifier la librairie, j’ai préféré changer de librairie. En utilisant RTClib de adafruit le programme donné en exemple passe la compilation donc je peux utiliser des morceaux. Pour onewire, effectivement, celle que j’avais n’était pas la bonne. Il faut la version 2.

Maintenant tout passe ! :slight_smile:

Merci beaucoup pour ces infos, mon début de programme fonctionne. Il me reste maintenant à passer à la difficulté suivante :slight_smile: :wink:

De rien :wink: