gcc/g++/make 编译信息带颜色输出
假设编译一个项目错误警告太多。很不好找,所以很希望输出信息能够带有颜色。
但是 gcc 4.9.0 之前的版本号并不支持,非常多情况下是不能替换编译器的,比方使用交叉编译器,
也能够使用 colorgcc。但我认为不是特别好,须要配置。假设使用Makefile还要更改编译器设置,
所以我自己动手写了一个。效果还能够,源代码在github上: https://github.com/chinaran/color-compile,
也能够去CSDN下载,点我。
------------------------------- 切割线是也 --------------------------------------------------------
项目名叫
color-compile,安装例如以下
(1) 编译 (进到项目根文件夹)
$ make
(2) 安装 (须要超级权限)
$ make install
(这一步做了两件事,一是把主程序复制到
/usr/local/bin/ 下,二是加入了 gcc/g++/make 的别名到 ~/.bashrc 的末尾)
(3) 測试 (新打开一个终端)
$ make TEST (== gcc test.c -Wall)
注意事项:
(1) 假设你的 gcc 版本号 >= 4.9.0,能够直接使用 -fdiagnostics-color=auto 參数,显示效果应该比 color-compile
好(没试过)
(2) 假设你须要卸载或者重装。请删除 ~/.bashrc 末尾处的gcc/g++/make 别名。以免影响之后的使用。
(3) 假设你须要加入新的编译工具。能够改动Makefile 的 install: 处。以 arm-linux-gcc 为例,echo 'alias arm-linux-gcc="color_compile
arm-linux-gcc"' >> $(ALIAS_FILE)。或者直接改动 ~/.bashrc 都行。
(4) 假设你须要更改显示的颜色,直接改动 out_color_info.c 源代码即可。当中有一些颜色定义的宏。
结果对照:
使用前:
使用后:
是不是非常醒目呀,有不论什么问题都能够联系我 gchinaran@gmail.com
gcc/g++/make 编译信息带颜色输出的更多相关文章
- Python_服务器与多客户端通信、UDP协议、pycharm打印带颜色输出、时间同步的机制
1.服务器与多客户端通信 import socket # 创建tcp socket的套接字 sk = socket.socket() # bind sk.bind(('127.0.0.1',8080) ...
- Python 入门 之 print带颜色输出
Python 入门 之 print带颜色输出 1.print带颜色输出书写格式: 开头部分: \033[显示方式; 前景色 ; 背景色 m 结尾部分: \033[0m 详解: 开头部分的三个参数: 显 ...
- Linux gcc/g++链接编译顺序详解
gcc/g++链接时对库的顺序要求 -Ldir Add directory dir to the list of directories to be searched for -l. -llibrar ...
- Linux中带颜色输出的printf使用简介(\033)
昨晚懒得FQ, 百度了一下linux中printf输出颜色的方法, 结果搜索结果质量让人倍感伤心. 越来越不想用bd了.还是Google一下吧, 手气真好, 第一个内容就很清楚明了! 我还是直接简单翻 ...
- python3 print() 函数带颜色输出 示例
1.1 实现过程: 终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关. 转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就 ...
- shell实现带颜色输出的进度条
1.基础版 #!/bin/bash b='' ;$i<=;i+=)) do printf "执行进度 :[%-50s]%d%%\r" $b $i sleep 0.001 b= ...
- 【Shell】带颜色输出(白底x色)
echo -e "\033[31mHello World.\033[0m" 红色31m 绿色32m 黄色33m 蓝色34m 黑色30m 白色37m 紫色35m 深绿色36m
- Linux 编译工具 gcc/g++、Make/Makefile、CMake/CMakeLists.txt、qmake
前言 编译器的主要工作流程: 源码(Source Code)>> 预处理器(Preprocessor)>> 编译器(Compiler)>> 汇编程序(Assembl ...
- gcc/g++实战之动态链接库与静态链接库编写
函数库一般分为静态库和动态库两种. 静态库: 是指编译链接时,把库文件的代码全部加入到可执行文件中,因此生成的文件比较大,但在运行时也就不再需要库文件了.其后缀名一般为”.a”. 动态库: 与之相反, ...
随机推荐
- angularjs金额大写过滤器
数字转中文 MyAppFilter.filter('rmbFilter',[function(){ function ChinaCost(input){ var numberValue=new Str ...
- Solr集成IK中文分词器
1.将IKAnalyzer-2012-4x.jar拷贝到example\solr-webapp\webapp\WEB-INF\lib下: 2.在schema.xml文件中添加fieldType: &l ...
- .NET基础拾遗(7)多线程开发基础2
二..NET中的多线程编程 2.1 如何在.NET程序中手动控制多个线程? 最直接且灵活性最大的,莫过于主动创建.运行.结束所有线程. (1)第一个多线程程序 .NET提供了非常直接的控制线程类型的类 ...
- java下io文件切割合并功能加配置文件
package cn.stat.p1.file; import java.io.File; import java.io.FileInputStream; import java.io.FileNot ...
- web离线应用
其实浏览器一直都是前端开发人员比较头痛的一个课题,各种兼容性.直到开始规范化和标准化,HTML5的出现. 在没有这套标准出现之前,对于客户端缓存的问题,我们基本上都是用cookie处理,当然目前除了后 ...
- Jade学习笔记
初学nodejs,折腾过用handlebars做模板,后来隔了一段重新学习,用了jade,真心简洁……记录一些学习笔记,以备复习. jade是基于缩进的,所以tab与space不能混用: 属性的设置: ...
- 使用 c# 调用进程相关开发
最近在维护公司的以前项目中发现,使用到了进程相关知识.现在将此总结,以备后面查看复习. 一.进程查看器 程序在运行的时候,操作系统就会为其分配一个进程.那么进程到底是什么东西呢? 实际上,进程 ...
- IE,火狐,谷歌浏览器下js判断滚动条是否已拉到页面最底部
E/FF/Chrome下document.documentElement和document.body的 scrollHeight/scrollTop/clientHeight 以及判断滚动条是否已拉到 ...
- FileInputStream
InputStream 基类,抽象类 FileInputStream 读取文件的字节流 BufferedInputStream 缓冲输入字符流 package file; import java.io ...
- UI控件自定义tableView的分割线的样式
- (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetFi ...