我有一个小脚本将markdown文件编译成html,然后将其插入到模板的主体中,以及一些样式表和javascript。我有一个GNU makefile来完成这个:
output.html: content.md compile.py style.css script.js
python compile.py < $< > $@
当我运行时,我收到错误:
make: * 没有规则可以制作目标
style.css', needed by
output.html'。停止。
如果我删除compile.py
,style.css
和script.js
,则目标会运行,但之后它不再依赖于文件,因此我可以在{{1}中进行更改},它不会重新运行目标。
所有这些文件都在同一目录中:
style.css
如何将所有这些文件声明为依赖项而不会导致错误?
答案 0 :(得分:1)
你已经告诉make output.html需要style.css,但是当前目录中没有style.css文件,你还没有告诉make如何创建它。指定style.css(和其他文件)的真实位置,依赖项将起作用。