From: Alexander Holler (holler_at_ahsoftware.de)
Date: 07. Nov 2001
Hallo Mark,
--On Mittwoch, November 07, 2001 16:13:27 +0100 Mark Seuffert
<office_at_pirate.de> wrote:
> Muss ich jetzt:
> 1. Für jede Source/Objet-Datei ein target anlegen...
> ansonsten nimmt er "g++ -c" anstatt "gcc -Wall -ansi -c"?
> 2. Für "make all" alle Object-Dateien einzelnd aufzählen...
> oder geht das auch eleganter (Liste mit Dateien)?
Wenn du die Abhängigkeiten ignorierst reicht folgendes:
------------
CC=gcc
CFLAGS=-Wall -O3 -march=k6 -pipe
CXXFLAGS=$(CFLAGS)
LIBS=-lGL
LDFLAGS=-s
prg: prg1.o prg2.o
$(CC) $(CFLAGS) $(LDFLAGS) $(LIBS) $^ -o $@
------------
Allerdings sollte man das so machen:
------------
wie oben
prg1.o: prg1.cpp prg1.hpp
prg2.o: prg1.c prg1.h
---------------------
Die entsprechenden Regeln zum compilieren von .c bzw. .cpp nach .o sind als
buildins vorhanden.
Wenn du z.B. eine einzige Datei mit anderen Parametern compilieren willst
machts du folgendens:
---- wie oben prg3.o: prg3.cpp prg3.hpp $(CC) $(CFLAGS) -pthread -c $< -o $@ ----möchtest du eigene Endungen benutzen kannst du z.B. folgendes nehmen um aus .meinc ein .o zu machen: ---- .o.meinc: $(CC) $(CFLAGS) -c $< -o $@ ----
Das sollte fürs erste genügen.
Gruß,
Alexander
Dieses Archiv wurde generiert von hypermail 2.1.2 : 11. Mar 2002 CET