【问题标题】:Why would nmake execute a link target when no dependents have changed?为什么在没有依赖项发生更改时,nmake 会执行链接目标?
【发布时间】:2019-02-25 09:44:22
【问题描述】:

我的 nmake makefile 的链接目标始终被执行 - 即使自上次运行 nmake 以来没有进行任何更改。我不知道要在这里寻找什么,可能有什么问题。 link.exe 是冗余运行的,很烦人。

这是我的 nmake makefile 的要点:

BINDIR=..\bin\x64\release

OBJS= \
    $(BINDIR)\main.obj

{..}.cpp{$(BINDIR)}.obj:
    cl.exe /c /Fo$(BINDIR)\ /Fd$(BINDIR)\ $<

app: $(OBJS)
    link.exe $(CFLAGS) /out:$(BINDIR)\app.exe $(OBJS)

有人知道我要找什么吗?

【问题讨论】:

    标签: nmake


    【解决方案1】:

    我自己回答这个问题,因为我刚刚找到了我丢失的部分。

    当我将app 目标拆分为命令目标和无命令目标时,它可以正常工作:

    app.exe: $(OBJS)
        link.exe $(CFLAGS) /out:$(BINDIR)\app.exe $*
    
    app: app.exe
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-16
      • 1970-01-01
      • 2010-12-23
      • 2015-06-14
      • 2019-10-24
      • 1970-01-01
      • 1970-01-01
      • 2016-07-11
      相关资源
      最近更新 更多