Forum: Compiler & IDEs Makefile Target/Prerequisite in unterschiedlichen Ordnern


von Mintfresh (Gast)


Lesenswert?

Servus Community,
ich habe beim Schreiben eines Makefiles nur noch ein letztes Problem.
Ich möchte die Objektdateien in einem bestimmten Ordner erstellen und 
die Sourcedateien liegen verstreut in mehreren Ordnern.
Wie kann ich das Problem lösen?
Versucht habe ich es bereits mit VPATH und vpath aber auch damit kein 
Erfolg.

Makefile (vereinfacht)
1
SRC = /A/test1.c /B/test2.c
2
OBJ_FILES = /X/Y/obj/test1.o /X/Y/obj/test2.o  
3
4
VPATH = /A /B
5
6
main.elf : $(OBJ_FILES)
7
     gcc -c $^ -o $@
8
9
$(OBJ_FILES) : %.c   
10
     $gcc -c $< -o $@

Ausgabe:
1
No rule to make target /X/Y/obj/test1.c needed by /X/Y/obj/test1.o

von Markus F. (mfro)


Lesenswert?

Mintfresh schrieb:
> VPATH = /A /B

Die Pfadbestandteile von VPATH werden nicht durch Leerzeichen, sondern 
durch Doppelpunkte getrennt:
1
VPATH = /A:/B

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.