![GCC 编译 Bash 脚本的结果](https://linux22.com/image/509728/GCC%20%E7%BC%96%E8%AF%91%20Bash%20%E8%84%9A%E6%9C%AC%E7%9A%84%E7%BB%93%E6%9E%9C.png)
嗨,我不太熟悉 bash shell 脚本,我正在使用 gcc 进行一些由 bash 脚本执行的编译,我如何知道(检查)编译是否成功?有什么例子吗?
答案1
由于您在脚本中执行此操作,因此您可以在使用变量运行时检查命令的退出代码$?
。
你可以做类似的事情:
./configure
if [ $? -ne 0 ]
then
echo Configure failed
exit 1
fi
make
if [ $? -ne 0 ]
then
echo make failed
exit 1
fi
make install
if [ $? -ne 0 ]
then
echo make install failed
exit 1
fi
echo All steps Succeeded
就我个人而言,我倾向于在脚本中更加冗长并使用更长的形式,因为你永远不知道将来谁会维护它。
如果是一次性命令行运行,我会使用 Dennis 和 mibus 已经提到的方法
答案2
gcc -o foo foo.c && echo OK
:)
答案3
您的问题中提到“使用 gcc 进行编译”,但我从您的评论中看到您实际上使用的是configure
和make
。这应该在您的问题中说明。
您可以使用同样的技术米布斯显示。
./configure foo && make && make install && echo OK
除非前一步成功完成,否则不会继续下一步,如果一切顺利,它将打印“OK”。
答案4
需要注意的是,对最终二进制生成可能很重要的警告不会被视为错误。因此,无论如何,我不会完全相信退出代码来判断您的编译/链接是否正确。您仍然应该验证输出。