make 执行过程中所产生错误并不都是致命的;特别是在命令行之前存在“ - ”、或者 make 使用“ -k ”选项执行时。 make 执行过程的致命错误都带有前缀字符串“ * ”。
错误信息都有前缀,一种是执行程序名作为错误前缀(通常是“ make ”);另外一种是当 Makefile 本身存在语法错误无法被 make 解析并执行时,前缀包含了 makefile 文件名和出现错误的行号。
在下述的错误列表中,省略了普通前缀:
[FOO] Error NN
[FOO] signal description
这类错误并不是 make 的真正错误。它表示 make 检测到 make 所调用的作为执行命令的程序返回一个非零状态( Error NN ),或者此命令程序以非正常方式退出(携带某种信号),参考 5.4 命令的错误 一节。
如果错误信息中没有附加“ * ”字符串,则是子过程的调用失败,如果 Makefile 中此命令有前缀“ - ”, make 会忽略这个错误。
missing separator. Stop.
missing sep