2
以下是一個人爲的示例Makefile,說明我遇到的問題。Makefile變量擴展
release: TYPE := release
FILE = main.cpp
OBJDIR = dist/$(TYPE)
OBJS = $(patsubst %.cpp,$(OBJDIR)/%.o,$(FILE))
release: $(OBJS)
@echo "just created: " $(OBJS)
%.o:
@echo "create [email protected]"
當我運行「做發行」的輸出爲:
create dist//main.o
just created: dist/release/main.o
我怎樣才能確保$(OBJS)公佈目標的依賴擴大到dist /發行/ main.o和不是dist // main.o。還有什麼是它擴展到dist main.o的原因?
感謝。我沒沒有意識到目標特定的變量只在目標配方內有效,我已經重新考慮了我的makefile並提出了一個解決方案。 – dbotha