Makefile 库更新和生成文件

Makefile 库更新和生成文件,makefile,Makefile,我已经很久没有做makefile了。我的实际Makefile工作正常,但如果$(lib)中的lib发生更改,我会收到一条消息,表示make与此无关。不考虑对$(LIB)中libs的依赖性。请注意,在$(LIB)中,我有带完整路径的库 all: $(OBJ_LIST) $(TEST_LOAD) $(TEST_CPP_UNIT) $(LIB) %.o: %.cpp g++ -c $(CPPFLAGS) -o $@ $< all:$(对象列表)$(测试负载)$(测试CPP单

我已经很久没有做makefile了。我的实际Makefile工作正常,但如果$(lib)中的lib发生更改,我会收到一条消息,表示make与此无关。不考虑对$(LIB)中libs的依赖性。请注意,在$(LIB)中,我有带完整路径的库

all:   $(OBJ_LIST) $(TEST_LOAD) $(TEST_CPP_UNIT) $(LIB)

%.o:    %.cpp
    g++ -c $(CPPFLAGS) -o $@ $<
all:$(对象列表)$(测试负载)$(测试CPP单元)$(库)
%.o:%.cpp
g++-c$(CPPFLAGS)-o$@$<

您还没有真正表达任何有用的依赖关系。如果希望在
$(LIB)
中的内容发生更改时重建特定的内容,则需要显式指定该内容。例如:

all: my_app

# my_app will be rebuilt if something in $(LIB) changes
my_app: $(OBJ_LIST) $(LIB)
    g++ -o $@ $<

%.o: %.cpp
    g++ -c $(CPPFLAGS) -o $@ $<
all:my_应用程序
#如果$(LIB)中的某些内容发生更改,我的_应用程序将重建
我的应用程序:$(对象列表)$(库)
g++-o$@$<
%.o:%.cpp
g++-c$(CPPFLAGS)-o$@$<