Makefile:目标模式不包含“%”

San*_*cho 2 makefile

为什么我的 Makefile 不起作用?

生成文件:

app-reset:
     bin/console avanzu:admin:fetch-vendor
Run Code Online (Sandbox Code Playgroud)

make app-reset正在返回:

makefile:3: *** target pattern contains no `%'.  Stop.
Run Code Online (Sandbox Code Playgroud)

mel*_*ene 12

如https://www.gnu.org/software/make/manual/make.html#Recipe-Syntax中所述,构建配方中的每一行都必须以制表符开头。如果您使用其他任何内容(例如空格序列),则会出现令人困惑的错误。

通常这表现为Makefile:42: *** missing separator. Stop.但在你的情况下冒号(:)混淆了,使人认为您正在尝试定义模式规则。

无论如何,解决方案是使用制表符。(或者,如果您使用的是 GNU make,请设置.RECIPEPREFIX。)