2

我有一个项目,代码位于多个目录中,我想做的是递归编译每个目录,我可以做到这一点。

我可以创建静态库,以便.a使用此 makefile的文件

CXX=g++
CXXFLAGS=-std=c++11
PROJECT=admin.a

OBJECTS = Manager.o


all: $(PROJECT)

.cpp.o:
    @echo -e "\033[32m -Building "$*"...\033[0m"
    $(CXX) -c $(CXXFLAGS) $<

$(PROJECT): $(OBJECTS)
    @echo -ne "\033[31m -Creating static library "$*"..."
    @(ar rcs $(PROJECT) $(OBJECTS))
    @echo -e "[DONE] \033[0m"

clean:
    @(rm -rf *.o)

mrproper: clean
    @(rm -rf $(EXEC))

但我不知道如何将这些与我的主程序联系起来,

任何帮助都会非常有用,

谢谢,

4

1 回答 1

1

.a您可以在链接器行中直接包含静态库 ( ):

gcc -o executable main.o admin.a
于 2013-02-11T23:04:56.850 回答