Gast
#1409060
Hallo, ich habe die I2C Library von Peter Fleury getestet. Mit dem mitgelieferten Makefile compliiert es wunderbar. Mit meinem eigenen kommen Fehler. WO ist da der Unterschied?
|
Anzeige
|
Makefileunterschied bei I2C Library
Gast
#1409060
Hallo, ich habe die I2C Library von Peter Fleury getestet. Mit dem mitgelieferten Makefile compliiert es wunderbar. Mit meinem eigenen kommen Fehler. WO ist da der Unterschied?
Gast
#1409062
und hier das mitgelieferte: Bei deinem wird der TWI-Code gar nicht übersetzt, und damit natürlich auch nicht dazu gelinkt.
Gast
#1409091
ok danke habe ich auch gerade entdeckt. Man kann den TWI Code ja aber auch per include einbinden, dass sollte ja keinen Unterschied machen oder? Es mag sein, dass das in diesem konkreten (einfachen) Fall keinen Unterschied macht, aber trotzdem solltest du dir so etwas erst gar nicht angewöhnen. Füge die Datei der Sourcen-Liste im Makefile hinzu, und gut ist's.
Gast
#1409503
ich ahbe nochmal eine frage ich habe jetzt die twimaster.c im makefile eingebunden in dieser datei ist #include <i2cmaster.h> eingebunden. Wieso bekomme ich dann errors, wenn ich nicht nochmal in der Hauptdatei die i2cmaster.h einbinde? Weil die Dateien unabhängig voneinander übersetzt werden. Beim Übersetzen der Hauptdatei ist dem Compiler kein bisschen davon bekannt, was in anderen C-Dateien steht. Dies dem Compiler mitzuteilen ist ja einer der Hauptzwecke der Header-Dateien.
Gast
#1410303
ok und wenn ich jetzt noch eine andere c Datei mit Header Datei habe wie binde ich die dann ein? ins makefile die C Datei und im Hauptfile per include die headerdatei? Und in den beiden Dateien wo binde ich dann #include <stdint.h> ein? In der Headerdatei? Oder im C oder in beiden? Du bindest die jeweiligen Header immer dort ein, wo du sie brauchst. Wenn z.B. in der Datei xyz.c die TWI-Funktionen benutzt werden, dann bindest du dort die twimaster.h ein, und wenn nicht, dann nicht.
Gast
#1410315
also ich verstehe den Sinn der Headerdatei k´jetzt so ich binde die Header Datei in die c Datei ein. in der Headerdatei binde ich die in der Headerdatei und in der c Datei benötigten Headerdateien ein. In der headerdatei deklariere ich u.a. die Funtionsprototypen für die C Datei. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|