Ausgliederung Funktionen in externe Datei

Gast #39582
Hallo zusammen,
ich hatte vor längerem schon einmal im Forum dazu ein Frage gestellt. 
(http://www.mikrocontroller.net/forum/read-2-20992.html)

Ich kam leider erst jetzt dazu, das Ganze zu realisieren.

Dabei habe ich folgendes Problem, dass wenn ich das *.h File in meinem 
main file einbinde, ich Fehlermeldungen über nicht gefundene Funktionen 
bekomme.
Binde ich allerdings das *.c file ein, so funktioniert alles ohne 
Probleme.

Ich habe die Funktionen wie folgt aufgeteilt:
*.h  -> Funktionsprototypen und Variablendecleration
*.c  -> Funktionsdefinitionen

Kann mir jemand sagen, warum das bei mir verdreht ist? Ich habe mir 
schon andere ausgegliederte Dateien angeschaut, die sind ebenso wie auch 
mir vorgeschlagen wurde, aufgebaut. Und sie funktionieren ebenfalls 
nicht, wenn ich sie bei mir in die SW einbinde.
Ist mein Compiler veraltet? Arbeit mit avr-gcc vom Sept. 2001

Vielen Dank im Voraus
Gruß
Steffen
Gast #39583
Dein Compiler ist veraltet, ja.  Aktuell sind Compilerversionen
der 3.3er Linie (auch wenn gcc 3.3 noch nicht offiziell
freigegeben ist).

Aber Dein Problem ist sicher, daß Du nur eine einzelne C-Datei
überhaupt versuchst zu Compilieren und zu Linken -- denke ich
jedenfalls, Du hast nicht geschrieben, was Du genau machst.
Gast #39584
Hi,
ich möchte alle Funktionen zur LCD Ansteuerung ausgliedern.
Muss ich dann ein extra makefile für das lcd.c file anlegen und auch 
extra compilieren? Ich versteh nicht ganz was Du meinst. Gruß
Gast #39585
Du mußt kein extra Makefile anlegen, Makefile gibt es genau
eins für das ganze Projekt.

Aber dieses Makefile muß natürlich alle Quelldateien benennen,
die im Projekt erfaßt werden sollen.  Selbstverständlich müssen
alle einzelnen C-Dateien eines Projekts auch alle compiliert
werden (und am Ende zu einem Ergebnis gelinkt).

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.