Forum: Compiler & IDEs Arduino in AtmelStudio


von mike (Gast)


Lesenswert?

n Abend,

ich habe dieses Tutorial
http://omarfrancisco.com/arduino-programing-using-atmel-studio-6-0/
verwendet, um mit AtmelStudio6 f. Arduino zu programmieren.
Die Beispieldatei lässt sich problemlos kompilieren, doch wenn ich:

#include <Arduino.h>
#include <AccelStepper.h>

AccelStepper xAchse(1,2,3);

mache, kommt:

undefined reference to `AccelStepper::AccelStepper(unsigned char, 
unsigned char, unsigned char, unsigned char, unsigned char)'

Aber so läuft es in der Arduino-IDE?
Ich glaube ja, das er mit den übergebenen Parameter(Typen) nicht 
zufrieden ist - aber ich bin auch schon Hilflos an dieser Stelle.
Nun hab ich mit Compilern & C++ noch nie wirklich ernsthaft Kontakt 
gehabt. Das soll sich nun aber ändern.
Wer kann das obige Rätsel lösen und mir eine gute Quelle zum Einstieg 
nennen?

von troll (Gast)


Lesenswert?

mike schrieb:
> undefined reference to `AccelStepper::AccelStepper(unsigned char,
> unsigned char, unsigned char, unsigned char, unsigned char)'
Der Linker findet die Funktion nicht. Du musst irgendwo einstellen dass 
die entsprechende Library bzw. das C-File beachetet wird.

von mike (Gast)


Lesenswert?

ganz sicher? das sollte eigentlich der Fall sein und eine kurze 
Kontrolle hat das auch (für meine Begriffe) bestätigt.
Zumindest zeigen die Pfade für Linker und Comiler an die richtigen 
Stellen und die Files sind auch da vorhanden..

von Karl H. (kbuchegg)


Lesenswert?

mike schrieb:
> ganz sicher? das sollte eigentlich der Fall sein und eine kurze
> Kontrolle hat das auch (für meine Begriffe) bestätigt.
> Zumindest zeigen die Pfade für Linker und Comiler an die richtigen
> Stellen und die Files sind auch da vorhanden..

Schon.
Aber die Libraries werden offenbar nicht mitgelinkt.
Ist ja auch in deinem Link angegeben, dass es da offenbar einen Fehler 
im AVR-Studio gibt, so dass die Library Angaben aus dem Template nicht 
übernommen werden, sondern händisch hinzugefügt werden müssen. Im Link 
ist halt von der libcore die Rede, dir wird halt die lib... fehlen, in 
der die Implementierung der AccelStepper Klasse liegt.

von mike (Gast)


Lesenswert?

cool, ich versteh nur Banhof. Das wird sicher Lustig...

(ich bin vor einigen Jahren mal eine ganze zeitlang LinuxFromScratch 
'gefahren'. Ich glaub, ich weiss was mich erwartet.)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.