ibm reference表示,当发生严重级别高于-qhalt编译器选项设置的错误时,将生成返回码1。我使用-qhalt=s (仅限严重错误)和-qnomaxerr (对错误数量没有限制)进行编译。尽管我成功地获得了文件,但编译后的xlC返回码是1,而不是0。我可以接受这一点,但这会破坏我的Makefile,因为make在遇到来自编译器的非零错误代码时会停止。
当我编译一个简单的int main() { return 0; }
程序时,我得到了预期的0返回码...
下面是有问题的编译会话的样子:
bash-3.1$ xlC -O4 -qstrict -I/adaneyko/src/boost-trunk -c some.h some.cpp -qhalt=s -qnomaxerr
xlC: 1501-218 (W) file some.h contains an incorrect file suffix
bash-3.1$ echo $?
1
bash-3.1$ xlC -qversion
IBM XL C/C++ Advanced Edition for Blue Gene/P, V9.0
Version: 09.00.0000.0010
我对1501-218警告一无所知,也无法在ibm参考中找到它。
发布于 2012-10-27 08:22:01
1501-218 (W)文件ome.h包含不正确的文件后缀
警告消息1501-218表示它所说的某个.h具有".h“的文件后缀,该文件后缀不是xlC命令的输入文件的有效文件后缀。假设“ome.h”是一个头文件,它是来自some.cpp的#include,不需要在xlC命令行中列出。
https://stackoverflow.com/questions/11528160
复制相似问题