【发布时间】:2011-08-14 22:04:57
【问题描述】:
我正在尝试使用 make 构建越来越多的 .cpp 文件。它们都驻留在子目录 src/ 中。我想将每个文件编译成它自己的可执行文件,驻留在 bin/. 这是我迄今为止尝试过的,但它不起作用,而且由于我是新手,所有的模式、变量等都很难确定扩展成什么等等。
CXX = g++
CXXFLAGS = -Wall -Wextra -pedantic
SRC = $(wildcard src/*.cpp)
BIN = $(patsubst src/%.cpp,bin/%,$(SRC))
all: $(BIN)
%: scr/%.cpp
$(CXX) $(CXXFLAGS) $< -o $@
另外,有没有办法只显示 BIN 的内容,例如让我看到发生了什么?
【问题讨论】:
-
make 中有许多约定,最好遵循。 CC 是 C 编译器,CXX 是 C++ 编译器,CFLAGS 是 $(CC) 的标志,CXXFLAGS 是 $(CXX) 的标志,CPPFLAGS 是预处理器的标志。
标签: makefile