Makefile

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Makefile
Kann mir von euch jemand schreiben wie ungefähr so ein Makefile aussieht?
wsort:…

all:…

install:all

clean: rm …

Aber wie schauts dazwischen aus?Hab noch nie so ein Makefile geschrieben und das in der Übung hat mir anscheinend nicht ausgereicht! 8-(


erstmal alle Targets die keine Datei sind (also zB all, install, clean) als PHONY targets kennzeichnen mit

.PHONY: all clean

bei allen Targets stehen hinter dem : die Abhaengigkeiten des Targets, das koennen Dateien oder auch andere Targets sein

z.B.
wsort: wsort.c

bedeutet, Target wsort haengt von der Datei wsort.c ab und laesst sich aus dieser erzeugen

danach kommt in neuen Zeilen und durch Tabulator eingerueckt eine Zahl von Befehlen die das Target erstellen

ein (etwas fortgeschritteneres) Beispielmakefile gibts unter
http://wwwcip.informatik.uni-erlangen.de/~simistil/

zum download

(entpacken mit tar xvzf Makefile-Demo.tar.gz)


hier ist das auch nochmal ganz nett beschrieben, wie make und rcs funktioniert:
http://einval.vol.8m.com/Unix/unix-programming-index.html


man beachte die tabs im Makefile, die hab ich doch glatt bei meinem 1.Versuch vergessen :wink:


warum ladet ihr euch nicht die folien zur sysprog-übung von der homepage runter? da sind auch makefiles erklärt.


Da wird alles einzeln erklärt, aber so wie ein makefile eines “normalen” Programmes komplett aufgebaut ist net.
Also wie das ganze mit install ,clean, …ausschaut.
Kann sein dass ich was übersehen hab aber man kann ja mal nachfragen!Oder? :gun:


Wer lesen kann ist klar im Vorteil… :-p


Super Claudius!
Anscheinend kannst du ja lesen!
Also:

Wie sieht dein Makefile aus?!


also auch auf die gefahr hin mich zu blamieren, aber ich hab ganz simpel nach schema f gemacht.

unter wsort: einfach kompliert, bei install: einfach ein cp meiner exe in das verzeichniss und bei clean einfach ein(mehrere) rm meiner sachen.
ist halt net besonders toll und blah, aber es geht … also einfach dummylike die befehle nacheinander eingegeben.

also wenn das nicht verlagt bzw falsch ist wäre es nett wenn mir jmd ein hinweis gibt :slight_smile:


Wow endlich hats mal einer gecheckt. Einfaches projekt => einfaches Makefile

tools sind schlieslich dazu da, einem Arbeit und Zeit zu sparen


Jo, drum hab ich auch schon bei der ersten Aufgabe ein Makefile gemacht…
Wenn ich dran denke, wie oft ich mir diesen gcc-parameter-schmarrn einzeln einzugeben damit erspart hab… :wink:


Von make hatte ich da noch keinen Schimmer schäm! :-/
Aber ich hab mir ein shell-Skript erstellt, das mir das getippe abnimmt… :smiley: