【发布时间】:2022-01-24 18:44:39
【问题描述】:
我有以下用于生成 .d 文件的 makefile 子部分
-include $(wildcard $(patsubst %,$(OBJ_PATH)/%.d,$(basename $(SRCS))))
%.o: %.cpp
@$(CC) -I$(INCLUDE_PATH) $(CFLAGS) $< -MM -MT $(@:.d=.o) > $(OBJ_PATH)/$(notdir $*.d)
${CC} -I$(INCLUDE_PATH) $(CFLAGS) -c $< -o $(OBJ_PATH)/$(notdir $@)
有时在我构建项目时,我收到以下错误/bin/sh: /path/to/my/build/dir/file.d: File exists,尽管 .d 文件不存在。
然后我一直收到这个错误,摆脱它的唯一方法是删除整个封闭目录并使用 git restore 并且系统将成功构建。
系统信息:
- git 版本 2.27.0
- GNU Make 4.2.1
- 红帽企业 Linux 8.5 (Ootpa)
- 免费索引节点:426798634
【问题讨论】: