Makefile:在子目录中编译库

时间:2017-03-24 20:18:48

标签: c++ makefile g++

我想要一个makefile来编译一个库(DRNG)和另一个位于子目录中的makefile。

这就是我所做的:

.PHONY: out.exe clean drng

DRNG_DIR=./libdrng-1.0/

clean:
    make clean -C $(DRNG_DIR)
    @rm -f out.exe *.o

drng:
    cd $(DRNG_DIR) && ./configure
    make -C $(DRNG_DIR)

CC=g++
CFLAGS=-Wall -Werror -std=c++11
LDFLAGS=-L$(DRNG_DIR) -ldrng
objects=...

%.o: %.cpp
    $(CC) -c $(CFLAGS) $*.cpp -o $*.o

out.exe: drng main.o $(objects)
    $(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS)

我收到错误:g++: drng: no such file or directory Make正在尝试编译'drng'。我认为把它放在PHONY中应该可以防止它。

0 个答案:

没有答案