如果使用Make编译失败则执行命令
使用 GNU Make 和 gcc 中的编译器之一:当(且仅当)编译失败时是否可以执行命令?
With GNU Make and one of the compilers in gcc: Is it possible to execute commands if (and only if) the compiling fails?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果为命令添加前缀
-
,则即使该命令返回非零错误代码,make 也会继续执行。但无法从第二个命令中的第一个命令访问错误代码。您可以在单个 make 命令中编写任意复杂的 shell 脚本。例如,以下是如何在 C 编译器失败时调用两个恢复命令,仅在第一个编译器失败时运行第二个命令,然后在 C 编译器失败时停止构建过程。
If you prefix a command with
-
, make keeps going even if the command returns a nonzero error code. But there's no way to access the error code from the first command in the second command.You can write arbitrarily complex shell scripts in a single make command. For example, here is how to call two recovery commands if the C compiler fails, running the second one only if the first one fails, and then stopping the build process if the C compiler failed.