Forum: Mikrocontroller und Digitale Elektronik <make clean> notwendig?


von Milchknilch (Gast)


Lesenswert?

Bin schon wieder auf was gestossen, wo ihr mir sicher Antwort geben 
könnt.

Wenn ich make aufrufe schaut er doch erst ob die datei überhaupt neu 
ist. Das Problem dabei ist, dass er anscheinen nicht überrüft ob an den 
include dateien was geändert wurde. Daher muss ich immer erst "make 
clean" und dann "make" aufrufen. Auf die Dauer ziemlich nervig. Ok ne 
batch datei würds auch tun, aber die muss ich dann in jedem Projekt 
mitschleppen. Gibt es nicht einen Schalter, der make sagt das es einfach 
alles aktualisieren soll? Hab im der man page nichts funden.

von Milchknilch (Gast)


Lesenswert?

Sorry ist im flaschen Forum gelandet. Hätte eigentlich ins AVR-GCC 
gehört. %-)

von Stifflers Mom (Gast)


Lesenswert?

Bleiben se mal ganz unruhig Herr E....! So kann man auch kommunizieren, 
wer braucht schon Firmen-Email! :-)

von Dieter (Gast)


Lesenswert?

Leider hast du deine make-Datei nicht angehangen.

Meines wissens läuft es so:

ziel : bedingung1 bedingung2
Tabulator Compileraufruf

bedingung1 ist z.B. deine C-Datei
bedingung2 ist deine h-Datei der *.h

Bei mir ist der Tabulator in der neuen Zeile wichtig, sonst gibt es eine 
Meldung "missing terminator" oder so ähnlich.

Dieter

von Milchknilch (Gast)


Angehängte Dateien:

Lesenswert?

so hier mein makefile

Ich hab mich damit noch nicht so beschäftigt, dachte das liegt eher am 
make. Hab es einfach aus dem inet gezogen und die namen angepasst.

von Oryx (Gast)


Angehängte Dateien:

Lesenswert?

Hi Milchknilch,

ich habe deine makedatei in zeile 143 geändert.
Einfach nur *.h hinzugefügt.

sobald du jetzt eine h-datei veränderst, sollten deine c-dateien neu 
kompiliert werden.

MfG
Oryx

von Milchknilch (Gast)


Lesenswert?

Das is ja billig G

Vielen Dank! Kannst du mir noch sagen was der Unterschied von % und * 
ausmacht?

von Matthias (Gast)


Lesenswert?

Hi

%.h bindet nur die Header-Datei ein die den selben Namen hat wie die .c 
Datei die gerade compilert wird. Also z.B. für lcd.c die lcd.h. Probleme 
gibts dann nur wenn keine Headerdatei vorhanden ist (z.B. für main) 
Gibts bestimmt auch einen Trick aber make ist ja nicht ganz 
unkompliziert.

Matthias

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
Noch kein Account? Hier anmelden.