- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 makefile 包含这些片段(以及其他片段):
SRC = src
OBJ = obj
DEPS = $(wildcard $(SRC)/*.cpp)
# ...
all : $(BINARIES)
@echo $(pathsubst $(SRC)/%.cpp,$(OBJ)/%.d,$(DEPS))
@echo $(DEPS:$(SRC)/%.cpp=$(OBJ)/%.d)
当我make all
时,只有第二个@echo
输出一些内容:
$ make all
obj/sample1.d obj/sample1_U.d
(gnu make)manual状态:
Another type of substitution reference lets you use the full power of the patsubst function. It has the same form ‘$(var:a=b)’ described above, except that now a must contain a single ‘%’ character. This case is equivalent to ‘$(patsubst a,b,$(var))’
根据这个解释,我希望两个 @echo
语句产生相同的输出,但它们显然不会产生相同的输出。使用显式 pathsubst
的第一种形式有什么问题?
(我在 OS X 上使用 gnu make 3.81
。)
最佳答案
大概您需要 patsubst
,而不是 pathsubst
。
关于Makefile之谜: What is wrong with this particular use of pathsubst?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5682474/
我的 makefile 包含这些片段(以及其他片段): SRC = src OBJ = obj DEPS = $(wildcard $(SRC)/*.cpp) # ... all : $(BINARI
我有 c 和 c++ 源文件的混合器。我正在尝试将它们组合到目标目录所需的 .o。 SOURCES: = SOURCES=src/test.c src/cpptest.cpp src/directfb
我是一名优秀的程序员,十分优秀!