如何更改我的makefile以构建到单独的文件夹中

时间:2014-02-21 05:21:29

标签: c++ gcc makefile g++

我有以下makefile:

CC=g++
CCOPTS=-Wall -Wextra -g

OBJS = manager.o tcpcon.o
TARGETS = manager

.PHONY: all clean

$(TARGETS) : $(OBJS)
    $(CC) -o $@ $^ $(CFLAGS) $(LIBS)

all: $(TARGETS) $(OBJS)

clean:
    rm -f $(TARGETS) $(OBJS)

%: %.cpp
    $(CC) $(CCOPTS) -o $@ $<

有没有办法可以将我的.o和bin文件构建到名为build的目录中?我尝试了一些教程,但我想我还没有完全理解makefile ..

1 个答案:

答案 0 :(得分:2)

不要感觉太糟糕;我不确定任何人完全理解makefile。

BUILD_DIR = build

OBJS = $(BUILD_DIR)/manager.o $(BUILD_DIR)/tcpcon.o
TARGETS = $(BUILD_DIR)/manager

...

$(BUILD_DIR)/%.o: %.cpp
    $(CC) -c $(CCOPTS) -o $@ $<