www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik C-Neuling nervt mal wieder


Autor: Benni Nori (benninori)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

ich muss euch nochmal kurz belästigen :-)

Ich bin immer noch an meiner CAN-Schnittstelle und spiele nun mit einem 
Beispiel von IAR. Hab da jetzt den entsprechenden Teil in mein Projekt 
eingefügt und angepasst. Jetzt war ich der Meinung ich hätte alles 
zurecht gebastelt da meckert der Linker bei einigen Funktionen:

Error[Li005]: no definition for "CAN_DeInit" [referenced from 
C:\Users\DE5NORBE\Desktop\2.1\Debug\Obj\system_stm32f105.o]


Damit kann ich leider nicht viel anfangen. Weiß ja noch nicht mal genau 
für was diese *.o überhaupt da ist.


Kann mir da jemand auf die sprünge helfen, oder ist das ohne weitere 
Fakten nicht so einfach?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist eine Fehlermeldung des Linkers, der versucht, das von einem 
Modul system_stm32f105 verwendete Symbol CAN_DeInit (hier vermutlich 
eine Funktion) Funktion aufzulösen.

Das bedeutet, daß Du diese Funktion CAN_DeInit zwar aufrufst, aber nicht 
das Sourcefile zu Deinem Projekt hinzugefügt hast, in dem diese Funktion 
drinsteht.

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

Bewertung
0 lesenswert
nicht lesenswert
Letzten Endes teilt dir der Linker mit, dass irgendwo, in einer Funktion 
in system_stm32f105.o eine Funktion namens "CAN_DeInit" aufgerufen wird 
und er in dem ihm zur Verfügung stehenden Object-File bzw. Libraries 
keine derartige Funktion finden konnte.

Da in deinen Funktionsnamen der Begriff "system" auftaucht, denke ich 
mal, dass das Problem darin besteht, dass du vergessen hast irgendeine 
Library anzugeben, in der diese Funktion steckt.

Es könnte auch sein, dass sich der ursprüngliche Entwickler gedacht hat, 
dass es nett wäre, wenn der Applikationsprogrammierer eine Funktion mit 
diesem Namen schreiben kann, die dann (geraten) am Ende des Programms 
aufgerufen wird und in der der Applikationsprogrammierer 'aufräumen' 
kann.

-> Doku lesen, Beispiele studieren

Autor: Benni Nori (benninori)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh - das stimmt, vielen Dank für eure Hilfe.
Die Funktionen sind tatsächlich nur initialisiert aber nicht wirklich 
vorhanden.
Da hätte ich ja auch mal drauf kommen können. Danke nochmal.

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.