Go Down

Topic: problème eclipse-arduino (Read 2639 times) previous topic - next topic

neroz

Lorsque je compile mon projet, j'ai cette erreur:

make all
Building target: Blinky.elf
Invoking: AVR C++ Linker
avr-gcc -cref -s -Os -o"Blinky.elf"  ./test.o   -lArduinoCore -lm -Wl,-Map,Blinky.map,--cref -s -nostdlib -L"C:\arduino-1.0.3\hardware\arduino\cores\arduino" -mmcu=atmega2560
avr-gcc.exe: -cref: No such file or directory
make: *** [Blinky.elf] Error 1

Je ne sais pas du tout comment la résoudre...

fred133084

si cela peut t'aider :
http://www.wikihow.com/Write-Arduino-Software-in-C

neroz

Je te remercie, mais ça ne m'aide pas vraiment, les erreurs qu'ils disent de corriger son déjà résolu dans les fichier que j'ai.
Quand je met mon main.cpp voici l'erreur que j'ai.

12:04:17 **** Incremental Build of configuration Release for project Blinky ****
make all
Building target: Blinky.elf
Invoking: AVR C++ Linker
avr-gcc --cref -s -Os -o"Blinky.elf"  ./main.o    -lm -Wl,-Map,Blinky.map,--cref -L"C:\arduino-1.0.3\hardware\arduino\cores\arduino" -mmcu=atmega2560
./main.o: In function `loop':
main.cpp:(.text+0x6): undefined reference to `digitalWrite'
main.cpp:(.text+0x12): undefined reference to `delay'
main.cpp:(.text+0x1c): undefined reference to `digitalWrite'
main.cpp:(.text+0x28): undefined reference to `delay'
./main.o: In function `setup':
main.cpp:(.text+0x34): undefined reference to `pinMode'
./main.o: In function `main':
main.cpp:(.text+0x3a): undefined reference to `init'
make: *** [Blinky.elf] Error 1

12:04:17 Build Finished (took 609ms)

Et voici le code:

Code: [Select]


#include <Arduino.h>


int ledPin =  12;    // LED connected to digital pin 13

// The setup() method runs once, when the sketch starts
void setup()   {
  // initialize the digital pin as an output:
  pinMode(ledPin, OUTPUT);
}

// the loop() method runs over and over again,
// as long as the Arduino has power

void loop()
{
  digitalWrite(ledPin, HIGH);   // set the LED on
  delay(1000);                  // wait for a second
  digitalWrite(ledPin, LOW);    // set the LED off
  delay(1000);                  // wait for a second
}


int main(void) {

  /* Must call init for arduino to work properly */
  init();
setup();

  for (;;) {
  loop();
  } // end for
} // end main



Je te remercie d'avance pour l'aide que tu pourra m'apporter

fred133084

tu as développés tes dossiers d'includes et contrôlé ce que tu as dedans ... car a lire les erreurs c'est relativement explicite...

68tjs

Manifestement il ne trouve pas ce qu'il cherche.
La bonne méthode :
En premier faire une bibliothèque statique avec le core arduino. Cela se fait une seule fois mais il en faut une par modèle de micro-controleur.
Cela ne sert à rien de faire comme l'IDE qui refait la bibliothèque a chaque compilation (il parait que cela doit changer......un jour)

Ensuite faire classiquement un projet et indiquer au linker où il doit aller chercher la bibliothèque précédement constituée.

C'est expliqué ici :
Bibliothèque statique :
http://www.arrizza.com/cgi-bin/pub?CreateArduinoStaticLibrary
Projet classique :
http://www.arrizza.com/cgi-bin/pub?CreateArduinoGenericProject

Plus de choix :
http://www.arrizza.com/cgi-bin/pub?ArduinoHowTo

fred133084

relis tout ce que je t'ai écris en mp. prend ton temps pour t'adapter a " l'arduino" lol

68tjs

Quote
relis tout ce que je t'ai écris en mp. prend ton temps pour t'adapter a " l'arduino" lol

C'est un forum d'entraide ici les conseils en mp cela ne se fait pas.

fred133084

???  ben écoute il me pose des questions en mp je lui répond non ?? je fais quoi ? je l'envoi bouler ?

68tjs

Non tu répond à sa question sur le forum et en mp, pour être discret, tu lui dit qu'en s'inscrivant il a accepté la charte du forum et que la charte dit qu'on ne donne pas de renseignements techniques en mp.

C'est compréhensible qu'un nouveau venu ne maîtrise pas immédiatement toutes les règles, c'est à nous de leur signaler "gentiment" quand ils se trompent.
Malgré tout la logique veux que quand on s'inscrit sur un forum et qu'on voit épinglé et bien visible :
   "Réglement et charte du forum... à lire impérativement avant de poster"
on fasse l'effort de lire

Jean-François


Non tu répond à sa question sur le forum et en mp, pour être discret, tu lui dit qu'en s'inscrivant il a accepté la charte du forum et que la charte dit qu'on ne donne pas de renseignements techniques en mp.

C'est compréhensible qu'un nouveau venu ne maîtrise pas immédiatement toutes les règles, c'est à nous de leur signaler "gentiment" quand ils se trompent.
Malgré tout la logique veux que quand on s'inscrit sur un forum et qu'on voit épinglé et bien visible :
   "Réglement et charte du forum... à lire impérativement avant de poster"
on fasse l'effort de lire


Bon.... ben ça c'est dit  XD
MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

neroz

D'accord, je vous remercie, vous pouvez fermé le sujet, je vais me débrouiller

Merci à tous

fred133084


D'accord, je vous remercie, vous pouvez fermé le sujet, je vais me débrouiller

Merci à tous


Bon.... ben ça c'est dit aussi   :D

Go Up