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

原諒我大花臉的打馬,主要是公司代碼,分毫不敢亂搞事,總之,看到有顏色輸出就對(duì)了。好了,大功告成。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Linux中關(guān)于控制進(jìn)程的命令總結(jié)
程序是一組可執(zhí)行的靜態(tài)指令集,而進(jìn)程(process)是一個(gè)執(zhí)行中的程序?qū)嵗?下面這篇文章主要給大家介紹了Linux中關(guān)于控制進(jìn)程的一些命令,包括Linux如何查看進(jìn)程、啟動(dòng)進(jìn)程等常用命令,下面來(lái)一起看看吧2017-03-03
Apache多虛擬主機(jī)多站點(diǎn)配置的兩種實(shí)現(xiàn)方案
本文介紹了在Apache服務(wù)器上配置多虛擬主機(jī)的兩種方案:基于IP地址的虛擬主機(jī)配置和基于域名的虛擬主機(jī)配置,詳細(xì)說(shuō)明了每個(gè)方案的配置步驟,以實(shí)現(xiàn)在同一臺(tái)服務(wù)器上托管多個(gè)網(wǎng)站的目的,感興趣的可以了解一下2024-09-09
單臺(tái)服務(wù)器中利用Apache的VirtualHost如何搭建多個(gè)Web站點(diǎn)詳解
這篇文章主要給大家介紹了關(guān)于在單臺(tái)服務(wù)器中利用Apache的VirtualHost如何搭建多個(gè)Web站點(diǎn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09
在Apache服務(wù)器中運(yùn)行CGI程序的方法
這篇文章主要介紹了在Apache服務(wù)器中運(yùn)行CGI程序的方法,文中以Perl腳本作為示例,需要的朋友可以參考下2015-07-07
linux下通過(guò)xinetd服務(wù)管理 rsync 實(shí)現(xiàn)開(kāi)機(jī)自啟動(dòng)
這篇文章主要介紹了linux下通過(guò)xinetd服務(wù)管理 rsync 實(shí)現(xiàn)開(kāi)機(jī)自啟動(dòng)的相關(guān)資料,需要的朋友可以參考下2017-10-10
Linux使用sar命令跟蹤和記錄系統(tǒng)資源利用率
sar?命令是?Linux?系統(tǒng)中的一個(gè)系統(tǒng)監(jiān)控工具,由?sysstat?包提供,它可以定期收集系統(tǒng)的各種性能數(shù)據(jù),包括CPU利用率、內(nèi)存使用情況、磁盤(pán)I/O活動(dòng)、網(wǎng)絡(luò)流量等,本文介紹了如何在?Linux?中使用?sar?命令跟蹤和記錄系統(tǒng)資源利用率,需要的朋友可以參考下2024-07-07
Linux命令?移動(dòng)/復(fù)制文件/目錄到指定目錄下的實(shí)現(xiàn)
這篇文章主要介紹了Linux命令?移動(dòng)/復(fù)制文件/目錄到指定目錄下的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04

