$(BUILDDIR)/%.check: $(SRCDIR)/%.c
$(eval pragma := $(shell grep "pragma" $< ))
@echo $<: $(pragma)$(杂注)变量始终为空字符串,即使对于包含#杂注的文件也是如此
怎么了?
发布于 2012-07-16 20:47:47
有几件事是错的。
1)您正在将Make语法放入命令中,该语法应该在shell语法中。
2)您正试图在一个命令中设置一个变量,然后在另一个命令中使用它(这不会起作用,因为每个命令都在其自己的子set中运行)。
3)您尝试了一个复杂的命令,而没有测试它的简单组件(这会告诉您出了什么问题)。
如果您想要做的就是显示#pragma行,下面就可以了:
$(BUILDDIR)/%.check: $(SRCDIR)/%.c
@echo $<: `grep "pragma" $<`如果你想对这些线做一些更复杂的事情,告诉我们它是什么,我们会看看我们是否能提供帮助。
https://stackoverflow.com/questions/11504259
复制相似问题