gpt4 book ai didi

Makefile:打印 BUILD SUCCESSFUL 或 BUILD FAILED

转载 作者:行者123 更新时间:2023-12-02 09:21:45 25 4
gpt4 key购买 nike

我正在使用 Makefile 来构建我的 C++ 项目。有点烦人的是,有时很难确定构建是成功还是失败。我希望在构建结束时看到一个清晰的声明,就像在 gradle 中一样。

如果构建通过:

BUILD SUCCESSFUL

如果构建失败:

BUILD FAILED

对于积极的情况,我找到了这个解决方案:

all: dependencies #every job is done in dependencies
echo "BUILD SUCCESSFUL"

最好的方法是什么?

最佳答案

  • Unix(或者任何命令行,实际上)软件的一个共同原则是“如果一切顺利,保持安静”。当然,Make 本身(以及以通常方式编写的 makefile)已经左右违反了该规则,但这仍然是一个很好的指南......
  • Unix 命令行程序使用退出状态来传达成功/失败,因此在终端中,您可以在调用 Make 后立即执行 echo $?0 表示成功,其他均不成功。
  • 无论上述美学观点如何,让 Make 在失败的情况下可靠地执行某些操作是很困难的,因为它的设计初衷并不是为了做到这一点。使用 shell 脚本包装 Make 调用要容易得多,如下所示:
#!/bin/shif make "$@"; then  echo BUILD SUCCESSFULelse  echo BUILD FAILEDfi

关于Makefile:打印 BUILD SUCCESSFUL 或 BUILD FAILED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42059634/

25 4 0