尝试从makefile创建静态库时,不会创建库。有人对此有任何意见吗?
all: test.exe
test.exe: test.o
gcc -o test.exe test.o -L. -ltest
test.o: libtest.a
gcc -c test.c
libtest.a: ABC-test.o
ar rcs ABC-test.o
ABC-test.o: A-test.c B-test.c C-test.c
gcc -c A-test.c B-test.c C-test.c
答案 0 :(得分:4)
在这条规则中:
libtest.a: ABC-test.o
ar rcs ABC-test.o
您忘记将图书馆的名称传递给ar
。试试这个:
libtest.a: ABC-test.o
ar rcs libtest.a ABC-test.o
或更好:
libtest.a: ABC-test.o
ar rcs $@ $^