最近調(diào)試代碼,make 輸出信息的時候 error 、warning 等信息都是和普通信息一樣白色打出來的,和普通信息一樣很難區(qū)分。每次就要在茫茫多的輸出信息中找那個小小的error 才看是哪一行出了問題,有時候運氣不好還可能來來回回看好幾遍才找到。這里提供一種解決辦法進行相關(guān)處理,讓make輸出的信息不再那么難找。
注意:gcc 在4.9 版本后已經(jīng)有相關(guān)的顏色標(biāo)記了,直接添加 -fdiagnostics-color=auto 參數(shù)即可
對象:公司的編譯服務(wù)器(debian系,內(nèi)核 3.2 )
一、改造服務(wù)器登錄shell
服務(wù)器默認登錄進去的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 //回車
關(guān)閉shell 再次登錄的時候檢查是否切換到了bash.。
# echo $SHELL
/bin/bash
這就代表切換成功了。
檢查下環(huán)境變量。貌似 .bashrc 沒有自動執(zhí)行:
# vim ~/.profile
//添加下面內(nèi)容
source ~/.bashrc
再次關(guān)閉shell后登錄,已經(jīng)成功加載 .bashrc了。
二、真正動手處理make輸出
這里處理make輸出使用的是一個github上的小程序,地址如下:
下載好后放到編譯服務(wù)器中,進行解壓和編譯:
unzip color_compile.zip
cd color_compile/
\make
cp color_compile out_color_info ~/program/
因為我沒有root權(quán)限,所以只有曲線救國,將需要程序直接拷貝到我的program目錄中,然后在修改 .bashrc
vim ~/.bashrc
//添加如下內(nèi)容
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"
然后在生效下環(huán)境變量:
source ~/.bashrc
去源代碼目錄中嘗試下輸出是否正確,如下圖所示:

6c301b92-b560-44b7-bdd9-97ae93722d73.png
原諒我大花臉的打馬,主要是公司代碼,分毫不敢亂搞事,總之,看到有顏色輸出就對了。好了,大功告成。