を実行した後、4つのライブラリをフォーマットで作成するsrc
フォルダーがあります。を含むフォルダーもあります。このファイルは、前述のライブラリに依存します。make
.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
私は何を間違っていますか?