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

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

Posted 2014. 04. 10 Updated 2017. 06. 02 Views 9687 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
번호 분류 제목 글쓴이 최근 수정일 조회 수
50 Linux 한글 입력기 나비(Nabi)에서 한/영 키가 인식되지 않는 경우 file TUW 2017.06.02 2409
49 Linux 좀 더 '진짜같이' VirtualBox 활용하기 - 심리스 모드 외 file TUW 2017.06.02 43327
48 Linux 디렉토리를 다른 경로에 마운트하기 (mount --bind) TUW 2018.11.16 29607
47 Linux [사설 클라우드 구축] 삼바(SAMBA) 서버 구축, 우분투-윈도 공유폴더 구현 file TUW 2017.06.02 24647
46 Linux [사설 클라우드 구축] 네트워크 드라이브 연결 (NetDrive) file TUW 2017.06.02 16472
45 Linux [사설 클라우드 구축] 기본 조건 및 아이디어 TUW 2014.04.20 13239
44 Linux [vsFTP] 설치 및 설정하기 file TUW 2017.06.02 12370
43 Linux [vsFTP] 생성 파일 기본 권한 설정하기 file TUW 2017.06.02 17860
42 Linux [vsFTP] 계정별 서로 다른 루트 디렉토리 지정하기 (chroot) file TUW 2017.06.02 23831
41 Linux [vi] 기본환경설정 (줄번호 표시, 방향키활성 등) TUW 2014.04.23 11628
40 Linux [VirtualBox] 가상머신 Windows 7 에서 Aero 기능 활성화하기 file TUW 2017.06.02 3312
39 Linux [VirtualBox] Windows 7 물리 디스크 부팅 (Raw Disk Booting or Native Booting) - 배경 file TUW 2017.06.02 5429
38 Linux [VirtualBox] Windows 7 물리 디스크 부팅 (Raw Disk Booting or Native Booting) - 방법 1 file TUW 2017.06.14 2956
37 Linux [Vi/Vim] 단축키 모음 file TUW 2017.06.02 11557
36 Linux [Ubuntu] 화면캡처 및 작업공간 전환 단축키 TUW 2014.04.20 24176
35 Linux [Ubuntu] 원격 Shell에서 로그인 사용자 디스플레이에 GUI 프로그램 실행하기 TUW 2016.03.06 10074
목록
Board Pagination Prev 1 2 3 4 Next
/ 4

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5