有时候我们编译一个大的项目的时候。会出现非常多错误使得屏幕堆满了非常多没用的信息。普通情况下我们须要找到首次出现错误的地方,在gcc中加入编译选项能够使编译停止在第一次出现错误的地方:

$ gcc -Wfatal-errors foo.c     // GCC 4.0 and later
$ g++ -Wfatal-errors foo.cpp
$ g++ -fmax-errors=N foo.cpp // 在出现第 N 此错误的时候停止编译。GCC 4.6 and later

假设使用cmake构建的项目:

add_definitions(
-Wfatal-errors
) 或者 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wfatal-errors") // better

打开警告信息:

$ g++ -Wall foo.cpp        //提示警告信息

警告信息当做错误处理:

$ g++ -Werror foo.cpp      //将警告信息当做错误显示

打开測试浮点数相等的警告:

$ g++ -Wfloat-equal foo.cpp        //通常測试浮点数相等是不准确的

gcc在出现错误的时候停止编译 -Wfatal-errors的更多相关文章

  1. gcc/g++以c++11的方式编译

    方法一: 在程序头加上预定义编译器命令 #pragma GCC diagnostic error "-std=c++11" 通过#pragma 指示 GCC编译器处理错误的方式以c ...

  2. 【java】泛型的作用是在编译阶段防止错误输入,绕过编译就绕过泛型,可用反射验证

    package com.tn.collect; import java.lang.reflect.Method; import java.util.ArrayList; public class Fa ...

  3. Illegal instruction错误的定位---忽略编译期警告的代价

    在原计算机的linux c++程序可以正确跑起来,但是换了一台机器运行时出现致命错误,程序直接当掉,错误提示如下: Illegal instruction (core dumped) 造成改错的主要原 ...

  4. windows下使用gcc完成头文件和目标文件编译

    环境要求 安装了gcc win+r然后输入cmd , dos界面输入 gcc -v 查看有没有安装gcc 进入正题 新建 text.c文件键入如下代码: #include <stdio.h> ...

  5. mac OS X 10.10更新gcc 4.9.1后默认无法编译连接的问题

    MAC OS X10.10升级前使用的低版本的gcc(好像是4.7.x),正常编译可以完成,不过会出现警告: couldn't understand kern.osversion `14.0.0' 网 ...

  6. 查看package编译时的错误信息及重新编译

    开发时,一般都是使用PL/SQL工具进行开发,查看编译错误及重新编译都很简单,但是一般的生产环境是不允许连接外界工具的,只能在命令行中进行重新编译及查看,今天我就遇到了这个问题,现在总结如下: 1.获 ...

  7. Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第九集-补充-热部署项目到tomcat中,但是数据库配置文件错误,中途停止部署,导致执行shutdow.sh报错异常: Could not contact localhost:8005. Tomcat may not be running error while shutting down】

    1,经过千辛万苦的尝试和百度,终于一个博客:http://stackmirror.caup.cn/page/skxugjqj0ldc关于catalina.sh文件的执行引起了我的注意: 2,我执行ca ...

  8. 开发错误12:gradle编译错误:Conflict with dependency com.android.support:support-annotations

    在build.gradle中的configurations.all {}下添加:resolutionStrategy.force 'com.android.support:support-annota ...

  9. GCC警告提示错误“cc1:all warnings being treated as errors”

    http://blog.csdn.net/zhangjs0322/article/details/25131787

随机推荐

  1. oracle 安装 启动listener 建库相关

    安装 参考 http://www.cnblogs.com/gaojun/archive/2012/11/22/2783257.html 几个问题: 1. 用户删除问题 p001:~ # userdel ...

  2. python基础-面向对象(装饰器)

    属性:   @property   @method_name.setter   @method_name.deleter   三个标签都是放在方法的上面来使用,且方法名要和后续使用的   变量名字相一 ...

  3. NYOJ 469 擅长排列的小明 II

    擅长排列的小明 II 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 小明十分聪明,而且十分擅长排列计算. 有一天小明心血来潮想考考你,他给了你一个正整数n,序列1, ...

  4. [转]常见linux命令用法介绍

    su switch user 用途:用于用户之间的切换 格式: su - USERNAME切换用户后,同时切换到新用户的工作环境中 su USERNAME切换用户后,不改变原用户的工作目录,及其他环境 ...

  5. 九度oj 题目1160:放苹果

    题目描述: 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法. 输入: 第一行是测试数据的数目t(0 <= t ...

  6. xmpp 与服务器连接并身份验证成功

    *  XMPP的特点,所有的请求都是通过代理的方式实现的 * *  因为xmpp是经由网络服务器进行数据通讯的,因此所有的,因此所有的请求都是提交给服务器处理 * *  服务器处理完毕止呕,以代理的方 ...

  7. TeraTerm设定(窗体大小,字体字号)保存为默认值

    Tera Term是一款很好的SSH工具,大家经常遇到一个头疼的问题,每次打开的时候,都要自己重新设置一遍Font. 介绍一下把自己喜欢的字体,设置好后,保存到默认配置中的方法. 设置窗体大小: 设置 ...

  8. 手把手教你搭建DHCP服务器

    目录 DHCP实现原理 DHCP定义 DHCP分配方式 DHCP工作过程 初次登录 重新登录 更新租约 搭建DHCP服务器 实验目的 实验环境 实验步骤 实验结果 DHCP实现原理 DHCP定义 DH ...

  9. SHoj A序列

    A序列 发布时间: 2017年7月9日 18:17   最后更新: 2017年7月9日 21:05   时间限制: 1000ms   内存限制: 128M 描述 如果一个序列有奇数个正整数组成,不妨令 ...

  10. CatchTheCaw ----广搜入门

    抓住那头牛(POJ3278)农夫知道一头牛的位置,想要抓住它.农夫和牛都位于数轴上,农夫起始位于点N(0<=N<=100000),牛位于点K(0<=K<=100000).农夫有 ...