我有一个src
文件夹,运行make
后会创建 4 个.a
格式的库。还有一个文件夹tests
,其中包含tests.cpp
. 该文件依赖于前面提到的库。
我正在尝试获取一个生成内部tests
库的 Makefile src
(它确实如此),然后使用它们进行编译tests.cpp
(这它没有 - 我得到了许多未定义的引用,就好像它没有正确链接一样)。
该文件夹tests
包含以下内容Makefile
:
include ../src/makefile.inc
DIR = ../src
OBJLIBS = ../src/CapaFisica.a ../src/CapaLogica.a ../src/CapaInterfaz.a ../src/Utilitarios.a
TARGETS = tests.cpp
EXE = tests
all : $(EXE)
%.a :
-for d in $(DIR); do (cd $$d; $(MAKE)); done
tests: $(OBJLIBS)
$(CC) $(CFLAGS) $(OBJLIBS) -o $@ $(TARGETS)
clean :
$(ECHO) Borrando archivos.
-$(RM) -f ./tests
cd $(DIR); make clean
find . -name "*.o" -type f -print | xargs /bin/rm -f
我究竟做错了什么?