Skip to content
TUWLAB.com
모든 게시물에 대하여 '링크'
방식의 퍼가기만 허용합니다.
한양대학교 전자통신컴퓨터공학부
바라미
  • 128
  • 2595893
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 XE XE 룰셋(Ruleset) 작성 방법 매뉴얼 file TUW 2017.06.02 12750
96 XE [XE] elFinderXE 모듈 24 file TUW 2019.10.14 13998
95 XE Social XE 트위터 프로필사진 표시 문제 해결하기 3 file TUW 2017.06.02 205149
94 Android 루팅 응용 : 스마트폰 부팅화면 커스터마이징 4 file TUW 2017.06.02 33845
93 Android 루팅 응용 : 스마트폰 카메라 셔터음 없애기 2 file TUW 2018.02.08 34310
92 Android 삼성 스마트폰 루팅하기 file TUW 2017.06.02 22890
91 XE Social XE 댓글 위젯에 SNS 전송 옵션 추가하기 6 file TUW 2017.06.02 23632
90 Linux Ubuntu에서 PHP 최신버전 업데이트하기 TUW 2014.04.23 11025
89 Apache Apache2 서버에 SSL/HTTPS 설치하기 (StartSSL) - 2 file TUW 2017.06.02 20553
88 Apache Apache2 서버에 SSL/HTTPS 설치하기 (StartSSL) - 1 file TUW 2017.06.02 17815
87 Linux [Emacs] 주요 단축키 모음 file TUW 2017.06.02 11582
86 Linux [Vi/Vim] 단축키 모음 file TUW 2017.06.02 11557
85 Linux [vi] 기본환경설정 (줄번호 표시, 방향키활성 등) TUW 2014.04.23 11634
84 Linux [vsFTP] 계정별 서로 다른 루트 디렉토리 지정하기 (chroot) file TUW 2017.06.02 23847
83 Linux iptables 명령을 이용하여 특정 IP대역 접속 차단하기 TUW 2014.11.17 19040
82 Apache Apache 일별 로그파일 생성하기, 필터링 로깅하기 TUW 2014.04.23 19996
목록
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