Hallo Forum, ich bin dabei eine RTC vom Typ DS 1307 zum laufen zu bekommen. Um die Software so allgemeingültig wie möglich zu machen, habe ich zwei Bibliotheken erzeugt. Eine für die TWI Funktionen und eine für die RTC Funktionen. Um die RTC-Bibliothek zu übersetzen muss ich die TWI-Bibliothek dazulinken. Das sehe ich noch ein. Wenn ich das Hauptprogrmm übersetze und die RTC-Bibliothek dazulinke reicht das dem GCC nicht aus. Ich muss noch einmal die die TWI-Bibliothek dazulinken. Da, laut AtmelStudio, beide Bibliotheken statisch sind verstehe ich das so, dass die TWI-Bibliothek einmal zu der RTC-Bibliothek und zusätzlich zu meinem Hauptprogramm, also zweimal, dazugelinkt wird und somit auch zweimal im Hexcode vorhanden sind. So mein Verständniss von statischen Biblotheken. Wo ist da mein Denkfehler? Gruß Peter
Peter Jänsch schrieb: > Um die RTC-Bibliothek zu übersetzen muss ich die TWI-Bibliothek > dazulinken. Das sehe ich noch ein. Ich nicht. Ich fürchte aber, du verwechselst Bibliotheken mit Headerfiles.
Peter Jänsch schrieb: > Um die RTC-Bibliothek zu übersetzen muss ich die > TWI-Bibliothek dazulinken. Kann eigentlich nicht, denn die wird erst beim Linken gebraucht, was du ja zu dem Zeitpunkt nicht tust. Peter Jänsch schrieb: > dass die TWI-Bibliothek einmal zu der RTC-Bibliothek und zusätzlich > zu meinem Hauptprogramm, also zweimal, dazugelinkt wird Da statische Bibliotheken (zumindest die im Unix-Style (.a), die GCC verwendet) keinerlei Abhängigkeitsinformationen enthalten, weiß der Linker nicht dass die RTC-Bibliothek die TWI-Bibliothek benötigt, daher musst du sie da mit angeben. Beim Compilen der RTC-Bibliothek brauchst du die TWI-Bibliothek noch nicht.
Mein Fehler war nicht die Verwechselung von Bibliotheken und Headerfiles sondern dass ich glaubte bei der RTC-Bibliothek müsste ich die TWI-Bibliothek mit angeben. War aber wie "Kindergärtner" geschrieben hat nicht notwendig. Wieder einen Schritt weiter bei der Benutzung des AVR-GCC ;-) Danke für eure Hilfe!!! Bis bald mal wieder Peter
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.