我有一个可以执行多种操作的 makefile,包括调用 bash 文件和创建 C++ 文件。在 bash 文件中我有代码:
echo "${variable}: Error" 1>&2
exit 1
它打印错误文本,然后退出批处理文件和 makefile,停止它。我想用 C++ 代码做同样的事情。我可以抛出一个错误并在抛出错误的地方停止 C++ 代码,但我似乎无法找到一种方法来让它停止 makefile。有没有办法做到这一点?感谢您的帮助。
编辑:在下面的评论中提到,但是 makefile 都会编译代码,然后在下一节中运行它,因此最好能够在编译错误和运行错误时都打破 makefile。
最佳答案
既然您谈论的是 Makefile,我假设您希望在 C++ 程序的编译期间停止 Makefile(而不是生成的程序的执行)。
如果是这种情况,请使用 #error
预处理器指令。
#if !defined(FOO) && defined(BAR)
#error "BAR requires FOO."
#endif
引用:
关于c++ - 当 C++ 在 unix 中调用错误时停止所有 makefile 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24621049/