Skip to content
TUWLAB.com
모든 게시물에 대하여 '링크'
방식의 퍼가기만 허용합니다.
한양대학교 전자통신컴퓨터공학부
바라미
  • 320
  • 2596085
DNS Powered by DNSEver.com
Linux

[ColorGCC] 컴파일 경고 및 오류메시지 컬러로 출력하기

Posted 2014. 04. 10 Updated 2017. 06. 02 Views 9689 Replies 0
Atachment
첨부

윈도우 환경에서 Visual Studio와 같은 IDE에서만 개발 작업을 하다가, 리눅스 환경에서 처음 개발을 시작한게 된다면 불편하고 막히는 점이 한 두가지가 아닐 것입니다.

IDE만 설치하면 자동으로 설정해주고 지원해주던 것들이, 리눅스에서는 일일이 수동으로 세팅해 주어야 하기 때문입니다.

하지만, 사용자가 일일이 환경설정을 해 줘야 되서 그렇지, 일단 세팅만 잘 해두고 그 환경에 익숙해진다면 얼마 가지 않아 개발은 리눅스 환경에서 하는 것이 훨씬 편하다고 느끼게 될 것입니다.

새로운 개발 환경에서 불편함을 느끼게 되는 점이 한 두가지가 아니겠지만, 이번 포스트에서는 모두 똑같은 색으로 출력되는 컴파일 오류메시지를 컬러풀하게 출력하는 방법을 다루도록 하겠습니다.

리눅스에 설치된 기본 컴파일러(gcc, g++, cc, c++)로 컴파일을 하면 경고나 오류가 발생하더라도 메시지만 출력할 뿐 해당 메시지를 컬러 형식으로 구문강조해서 표시해 주지 않습니다. 하지만, ColorGCC라는 유틸리티를 사용하면, IDE에서와 같이 메시지를 컬러로 표시할 수 있습니다.


ColorGCC 설치

다음 명령어를 사용하여 colorgcc를 설치합니다.

sudo apt-get install colorgcc

다음으로, 시스템에서 사용하는 컴파일 명령어들이 모두 colorgcc를 가리키도록 설정합니다.
이 과정은 심볼릭 링크를 만들고, $PATH에 해당 디렉토리가 가장 앞에 위치하도록 설정하는 과정으로 나뉩니다.


컴파일러 심볼릭 링크 생성

mkdir ~/compilers
cd ~/compilers
ln -s `which colorgcc` g++
ln -s `which colorgcc` gcc
ln -s `which colorgcc` cc
ln -s `which colorgcc` c++


PATH 등록

~/.bashrc 맨 아래에 다음 줄을 추가합니다.

export PATH="$HOME/compilers:$PATH"


.colorgccrc 작성

이제 컴파일 명령을 모두 colorgcc로 돌렸으므로, colorgcc에서 각 컴파일러를 찾을 수 있도록 설정해 주어야 합니다.

위에서 생성한 링크로 하여금 colorgcc가 실행이 되면, colorgcc에서는 다음 설정 파일을 뒤져서 실제 컴파일러의 위치를 찾아내어 실행합니다.

~/.colorgccrc 파일을 다음과 같이 작성합니다.

gcc: /usr/bin/gcc
g++: /usr/bin/g++
cc: /usr/bin/cc
c++: /usr/bin/c++


콘솔을 재시작하고, 실제 컴파일을 해서 경고나 오류메시지가 다음과 같이 컬러로 표시되면 올바르게 설정이 된 것입니다.

error_test.png


※ 사용할 컴파일러를 추가하고 싶다면, 앞서 생성한 compilers 디렉토리에 해당 컴파일러 명령어가 colorgcc를 가리키도록 심볼릭 링크를 생성하고, colorgccrc에 컴파일러의 실제 경로를 기재해주면 됩니다.


TAG •
서비스 선택
이용중인 SNS 버튼을 클릭하여 로그인 해주세요.
SNS 계정을 통해 로그인하면 회원가입 없이 댓글을 남길 수 있습니다.
댓글
?
Powered by SocialXE

List of Articles
번호 분류 제목 글쓴이 최근 수정일 조회 수
97 AVR [온도조절 인두기] 1. 모든 사건(?)의 발단 file TUW 2017.06.02 14333
96 Python pyenv를 이용하여 여러 버전의 Python 동시에 사용하기 3 TUW 2016.07.12 14282
95 XE XE에서 레이아웃 편집 쉽게 하기 file TUW 2017.06.02 14021
94 XE [XE] elFinderXE 모듈 24 file TUW 2019.10.14 13998
93 XE XE 요소 개발을 쉽고 빠르게 - XE Wizard 2 file TUW 2017.06.02 13924
92 Linux [Ubuntu] SSH 초기 접속 속도 향상시키기 TUW 2014.04.23 13828
91 Linux Ubuntu에서 GIT Client 설치 및 사용하기 TUW 2014.04.24 13713
90 AVR [온도조절 인두기] 3. 하드웨어 디버깅 file TUW 2017.06.02 13615
89 일반 전력선 통신(PLC; Power Line Communication) TUW 2014.04.16 13261
88 Linux [사설 클라우드 구축] 기본 조건 및 아이디어 TUW 2014.04.20 13239
87 Linux [Ubuntu] 디스크 용량 확인 명령어 TUW 2014.04.20 13226
86 AVR [AVR 강의] AVR 강의자료 - 1. 사전준비 및 오리엔테이션 file TUW 2021.12.28 13172
85 일반 트랜지스터의 회로기호와 핀 명칭 file TUW 2017.06.02 13159
84 AVR [온도조절 인두기] 5. 소프트웨어 제작 file TUW 2017.06.02 13021
83 일반 [GIT] 기본 환경 설정 및 작업 시작하기: config, clone, init, pull, fetch, remote TUW 2019.01.30 12861
82 AVR [온도조절 인두기] 2. 하드웨어 제작 file TUW 2017.06.02 12825
목록
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 ... 13 Next
/ 13

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5