Hallo, ich hab ein Problem mit meinem AVR-Stutio. Und zwar habe ich eine .c Datei und dazu eine Headerdatei geschrieben, deren Funktionen ich jetzt in einem anderen Programm verwenden will. In der Header Datei sind die Prototypen der Funktionen mit extern deklariert. die Headerdatei ist in das neue Projekt mit #inlcude "xy.h" eingebunden. Leider kann ich jetzt trotzdem nicht auf die gewünschten Funktionen zugreifen und erhalte statt dessen die Fehlermeldung: ../neu.c/:43: undefined reference to 'funktionx' Muss ich irgendo im AVR Studio noch angeben wo die c-Datei ist oder wo liegt der Fehler? Vielen Dank schon mal
Die Headerdatei verkündet nur die Deklarationen. Der Linker muss aber letztlich auch die Definition finden. Du musst ihm also sagen, dass er beide C-Dateien compilieren und das Ergebnis gemeinsam linken soll. Wie man das im AVR Studio sagt, müssen dir aber andere Leute erzählen, ich hab' kein Windows (und will keins haben).
Ist aber ganz simpel. Du klickst links in der Menuestruktur auf 'Source Files'. Rechte Maustaste: Im Pop-Down Menue waehlst Du 'Add existing Source File(s)' und zeigst ihm die C-Datei. Selbiges kannst Du auch noch mit dem Header machen: Auf 'Header Files' mit der rechten Maustaste klicken, 'Add existing Header File(s)', die Datei zeigen und fertig.
Danke euch beiden, so hats geklappt. Ich habe immer nach einem Befehl gesucht mit dem man den Compiler dazu bringt die andere Datei zu kompilieren, und habe das nahe liegendste wohl übersehen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.