Makefile ed

Zum automatischen Compilieren von Projekten.

Grundlagen ed

Datei ed

Dateiname: Makefile im Verzeichnis des Quellcodes.

Aufruf dann durch

make Ziel

oder einfach

make

dabei wird das Ziel auf all gesetzt.

Regeln ed

Regeln haben die Form:

Ziel : Abhängigkeit1 Abhängigkeit2 Abhängigkeit3 ...
    Befehl

(ein Tab-Zeichen vor dem Befehl!)

der Aufruf von

make Ziel

sucht die Regel mit diesem Ziel und führt falls nötig den Befehl dazu aus.

Ob es nötig ist, wird durch die Abhängigkeiten bestimmt. Enthalten sie andere make-Ziele, werde diese zuerst versucht zu erstellen.

Kommentare ed

beginnen mit Raute:

# Kommentar...

Konstanten ed

Man kann String-Konstanten definieren durch

Variablenname = Inhalt

(ohne Hochkommas), übere mehrere Zeilen:

Variablenname = Inhalt\
    mehr Inhalt

der Wert wird substituiert durch

$(Variablenname)

typische Struktur ed

# tolles Projekt
BIN = AusführbareDatei
CPP = g++
FLAGS = -O1
FLAGSLINKING = -lBibiothek

# Standart-Aufruf weiterleiten
all : $(BIN)

# die ausführbare Datei
$(BIN) : main.cpp object.o
    $(CPP) object.o main.cpp -o $(BIN) $(FLAGSLINKING)

# nötige Objektdatei
object.o : object.cpp object.h
    $(CPP) -c object.cpp -o object.o $(FLAGS)

Erweitert ed

Rekursion ed

$(MAKE) -C Unterverzeichnis

Categories: Computer