cc1plus: all warnings being treated as errors
解决办法:只需要找到相应的Makefile,去掉编译选项中的 -Werror 即可。
--Werror
视警告为错误;出现任何警告即放弃编译.
-Wall
会打开一些很有用的警告选项,建议编译时加此选项。
-Wextra
打印一些额外的警告信息。
-w
禁止显示所有警告信息。
=============================================
#include <stdio.h>
#include <sys/types.h>
ssize_t test(void)
{
return -1;
}
int main()
{
size_t ret;
if ((ret = test()) < 0)
printf("impossible\n");
return 0;
}
如果按照下面方式编译,执行不会有警告信息
$ gcc -Wall test.c
如果加上 -Wextra 选项会告知编译器做更深度的检查报告
$ gcc -Wall -Wextra test.c
test.c: In function 'main':
test.c:13: warning: comparison of unsigned expression < 0 is always false
-Wextra 还有更多的检查,上面只是其中一个 -Wall 没包含但很有用的一个检查。
相关文章
- gcc 生成动态库时-fpic选项是什么意思。
- GCC 编译及编译选项
- gcc编译中使用的编译选项
- #gcc笔记01#gcc编译选项 -O0 -O1 -O2 -O3
- paip.提升用户体验---c++ qt 取消gcc编译的警告信息.txt
- gcc 优化选项 -O1 -O2 -O3 -Os 优先级
- gcc -O0 -O1 -O2 -O3 四级优化选项及每级分别做什么优化
- Linux gcc编译之-std选项
- centos升级gcc到4.8.2(cc1plus: 错误:无法识别的命令行选项“-std=c++11”)
- centos升级gcc到4.8.2(cc1plus: 错误:无法识别的命令行选项“-std=c++11”)