www.mikrocontroller.net

Forum: Compiler & IDEs undefined reference to.


Autor: Knecke (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend!

Habe mir eben die Servo Libary von 
http://derjulian.net/mikrocontroller#library runtergelden diese in mein 
Projekt eingebunden, aber es funktioniert einfach nicht.

Ich erhalte immer die Fehlermeldung:

Build started 8.9.2007 at 22:22:09
avr-gcc.exe -mmcu=atmega8  main.o lib.o     -o servolib.elf
main.o: In function `main':
../main.c:44: undefined reference to `servo_init'
../main.c:45: undefined reference to `servo_set'
make: *** [servolib.elf] Error 1
Build failed with 2 errors and 0 warnings...


die lib.c ist in mein Projekt mit eingebunden, arbeite mit AVR-Studio 
und einem Atmega8.

Hab schon alles probiert, woran liegt es?

Danke schonma im voraus!

MfG

Knecke

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du mal in lib.c hineinschaust und die Funktionen
aufsuchst, dann siehst du, dass diese Funktioen allesamt
mittles

#ifdef SERVOS

gekapselt sind.

Wenn die Funktionen also nicht vorhanden sind, dann liegt
es daran, dass es kein Symbol 'SERVOS' gibt und der Compiler
daher diese Funktionen auch nicht mitcompiliert hat.

Die Frage ist daher, warum ist das Macro SERVOS nicht definiert?
Dazu oeffne man mal das File config.h. Wenn man da ein bischen
durchscrollt, dann fällt einem auch die Zeile

//#define SERVOS

ins Auge. Und auch das Kommentarzeichen vor dem #define

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.