からのリンク入力ファイル:のMakefile - 私はサブディレクトリに格納されて生成されたオブジェクトを使用してプロジェクトをコンパイルしようとするフォルダ
myproject:
|
src: .cpp, .cpp ...
|
release: .o, .o ...
ここでのMakefileの一部です:私が得た..but
SRC ?= src
OBJ_PATH = $(SRC)/Release
vpath %.o $(OBJ_PATH)
...
OBJS := $(addprefix $(OBJ_PATH)/,obj1.o obj2.o)
all: build
obj1.o: $(SRC)/Manager.cpp
$(EXEC) $(CC) $(INCLUDES) $(CCFLAGS) $(GNCD_FLGS) -c $(<) -o $(OBJ_PATH)/[email protected] #-o [email protected] -c $<
obj2.o: $(SRC)/Synth.cpp
$(EXEC) $(CC) $(INCLUDES) $(CCFLAGS) $(GNCD_FLGS) $(DEFS) -c $(<) -o $(OBJ_PATH)/[email protected] #-o [email protected] -c $<
myApp: obj1.o obj2.o
$(EXEC) $(CC) $(LDFLAGS) $(GNCD_FLGS) -o [email protected] $(OBJS) $+ $(LIBS)
$(EXEC) mkdir -p $(OBJ_PATH)/$(TRGT_ARCH)/$(TRGT_OS)/$(BLD_TP)
$(EXEC) cp [email protected] $(OBJ_PATH)/$(TRGT_ARCH)/$(TRGT_OS)/$(BLD_TP)
$(OBJECTS) : Stt.h
build: myApp
run: build
$(EXEC) ./myApp
エラーリンク:
Could not open input file 'obj1.o'
Makefile:86: recipe for target 'myApp' failed
src/Releaseディレクトリにオブジェクトが見つかりませんでした。
て、myAppのための感謝の
これはhttp://stackoverflow.com/questions/13552575/gnu-make-pattern-to-build-output-in-different-directory-than-srcの複製ですか? –
はい、それは興味深い音ですが、私の場合、私はプロジェクトのソースと外部のlibからオブジェクトを作成する必要があります。だから私は両方のオブジェクトをリンクすることができるこの構文を得るために確信していません。 – spin0