我想将其写入文件:
-MF"$(@:%.o=%.d)" -MT"$(@)" -o "$@" "$<"
但是当我将此回显到文件中时,使用""
或''
,变量将会扩展,如何阻止扩展并按原样写入?
P.S。在makefile中调用echo '-MF"$(@:%.o=%.d)" -MT"$(@)" -o "$@" "$<"'
。
在我的makefile中,我想说我有:
all:
echo '-MF"$(@:%.o=%.d)" -MT"$(@)" -o "$@" "$<"' > $file
我在文件中看到的是
-MF“all”-MT“all”-o“all”“”
答案 0 :(得分:2)
使用$$
将美元符号放入Makefile配方
all:
echo '-MF"$$(@:%.o=%.d)" -MT"$$(@)" -o "$$@" "$$<"' > $file