linux下make命令实现输出高亮的方法

前言

无论是在linux 还是在Unix环境 中,make都是一个非常重要的编译命令。最近在调试代码,make 输出信息的时候 error 、warning 等信息都是和普通信息一样白色打出来的,和普通信息一样很难区分。每次就要在茫茫多的输出信息中找那个小小的error 才看是哪一行出了问题,有时候运气不好还可能来来回回看好几遍才找到。

这里提供一种解决办法进行相关处理,让make输出的信息不再那么难找。

注意:gcc 在4.9 版本后已经有相关的颜色标记了,直接添加 -fdiagnostics-color=auto 参数即可

对象:公司的编译服务器(debian系,内核 3.2 )

一、改造服务器登录shell

服务器默认登录进去的shell是sh,但是我想使用bash,进行以下操作就可以了:

  # chsh  Password: //输入你的密码就  Changing the login shell for jet  Enter the new value, or press ENTER for the default   Login Shell [/bin/sh]:/bin/bash //回车

关闭shell 再次登录的时候检查是否切换到了bash.。

  # echo $SHELL  /bin/bash

这就代表切换成功了。

检查下环境变量。貌似 .bashrc 没有自动执行:

  # vim ~/.profile  //添加下面内容  source ~/.bashrc

再次关闭shell后登录,已经成功加载 .bashrc了。

二、真正动手处理make输出

这里处理make输出使用的是一个github上的小程序,地址如下:

github地址:https://github.com/chinaran/color-compile

本地下载地址:

下载好后放到编译服务器中,进行解压和编译:

  unzip color_compile.zip  cd color_compile/  make  cp color_compile out_color_info ~/program/

因为我没有root权限,所以只有曲线救国,将需要程序直接拷贝到我的program目录中,然后在修改 .bashrc

  vim ~/.bashrc  //添加如下内容  export PATH=/home/jet/program/:$PATH  alias arm-openwrt-linux-gcc="color_compile arm-openwrt-linux-gcc"  alias arm-openwrt-linux-g++="color_compile arm-openwrt-linux-g++"  alias make="color_compile make"

然后在生效下环境变量:

  source ~/.bashrc

去源代码目录中尝试下输出是否正确,如下图所示:

linux下make命令实现输出高亮的方法 Linux 第1张

原谅我大花脸的打马,主要是公司代码,分毫不敢乱搞事,总之,看到有颜色输出就对了。好了,大功告成。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

参与评论