[prev in list] [next in list] [prev in thread] [next in thread] 

List:       suse-programming
Subject:    GNU make - Projektdateien in verschiedenen Verzeichnissen
From:       Thomas Reisinger <T.Reisinger () tu-bs ! de>
Date:       2003-02-17 9:18:02
[Download RAW message or body]

Liebe Newsgroup,

ich habe gerade ein kleines Projekt begonnen und schon tauchen die 
ersten Probleme auf, wenn ich das Tool "make" nicht in der einfachsten 
Form benutzen will. Die Situation ist folgende. Ich habe meinen 
Quellcode und meine Header-Dateien in der unten abgebildeten 
Verzeichnis-Struktur gespeichert.

project_dir
     |
     +- source
     |     |
     |     +- main.cpp
     |     +- foo.cpp
     |
     +- include
     |     |
     |     +- foo.h
     |
     +- bin
     |
     +- temp

Die Objektdateien sollen dann im <temp> Verzeichnis stehen und die 
ausführbare Datei in <bin>.

Das makefile sieht dazu wie folgt aus:

------------------ MAKEFILE -----------------------

PROJ_DIR=     project_dir
BIN_DIR=      $(PROJ_DIR)/bin
TEMP_DIR=     $(PROJ_DIR)/temp
INCLUDE_DIR=  $(PROJ_DIR)/include
SOURCE_DIR=   $(PROJ_DIR)/source

CC=g++

CXXFLAGS= -g -Wall
LFLAGS= -g -Wall -o $(BIN_DIR)/a.out

OBJS= foo.o main.o

vpath x.cpp $(SOURCE_DIR)
vpath x.h   $(INCLUDE_DIR)
vpath x.o   $(TEMP_DIR)
vpath x     $(BIN_DIR)

a.out : $(OBJS)
    $(CC) $(LFLAGS) $(OBJS)

main.o : main.cpp foo.h

foo.o : foo.cpp foo.h

---------------- MAKEFILE ENDE -----------------------

Wenn ich "make" jetzt so ausführe, dann wird die ausführbare Datei 
korrekt erzeugt, allerdings stehen meine Objektdateien immer im 
Verzeichnis <project_dir>. Wie kann ich es erreichen, dass diese im 
temporären Verzeichnis angelegt werden?

Vielen Dank für die Hilfe,
Thomas

-- 
Thomas Reisinger
mailto:T.Reisinger@TU-Bs.de
TU Braunschweig


-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    suse-programming-unsubscribe@suse.com
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: suse-programming-help@suse.com

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic