컴퓨터 공부/리눅스

[Linux] GCC에 대해서 배워보자

나정_ 2013. 4. 3. 12:50

GCC (GNU Compiler Collection) 


GCC는 GNU 기반의 운영체제에서 컴파일을 하기 위하여 만들어진 c언어 컴파일러(GNU C Compliler였으나 현재에는 여러가지 언어가 추가되어 GNU Compiler Collection으로 이름이 변경되었다 


현재까지 지원하고 있는 언어로는 C, C++, Objective-C ,Fortran , Java , Ada 등이 있다고 한다. 


1. GCC 설치 방법 


현재 내가 설치한 서버는 Ubuntu 12.04에는 기본적으로 GCC가 설치되어있으므로 따로 설치하지 않아도된다. 

하지만 굳이 Ubuntu에서 설치를 하자면 


- apt 명령어를 이용하는 방식

- 부트스트랩을 이용하는 방식을 통해 


설치할 수 있다. 


ㄱ. apt 명령어를 이용하는 방식 

아래의 명령어는 apt명령어를 이용한 방식으로 그대로 입력하면 Install이 가능하다. 


sudo apt-get install gcc 


ㄴ. 부트 스트랩을 이용하는 방식

먼저 부트스트랩에 대하여 알고 넘어가자.

부트스트랩이란, 컴파일러를 컴파일 하는 방식으로 다른 컴파일러를 통하여 일부를 컴파일 한뒤 그 결과물로 본연의 컴파일러를 컴파일 하는 방식이라고 할 수 있다. 


GCC를 부트스트랩으로 설치하자면 다른 컴파일러를 통하여 컴파일 하기 떄문에 복잡한 절차를 거친다. 


1. Preinstall 패키지 확인

2. Source download 

3. Install 설정 파일 수정

4. 프로그램 build 

5. test 

6. 최종 설치 


<!-- 이해가 잘 가지 않음 --> 


2. GCC 사용방법 


GCC는 컴파일러 기능만 수행하기때문에 VI를 통하여 .c 파일을 생성한 뒤 gcc를 이용하여 컴파일을 수행하게 된다. 

(.c 파일말고 다른 파일도 가능???)  


GCC 컴파일을 수행하는 명령어는 아래와 같다 


gxx[-option] filename


이와 같이 옵션값 없이 명령어를 수행하게 되면 a.out이라는 목적코드를 생성하게 된다. 

* 목적코드 : 컴파일이 되고 난후 파일을 의미한다. 




[그림1]



* GCC option 

- v : GCC 버전을 확인하며 컴파일 하면서 사용할 시 컴파일 과정을 보여준다. 




[그림2]


-0 : 수행 결과 파일의 이름을 지정한다. 

      이옵션의 경우 a.out으로 만들어지던 결과 파일이 원하는 파일명으로 바꿔서 저장할 수 있다. 


-I : include한 헤더파일의 경로를 추가해준다. 

     기본 경로 이외의 주소에 존재하는 헤더파일을 사용할 수 있다. 


추가적으로 option기능에 대하여 알고 싶으면 http://gcc.gnu.org/ 을 참고하는 것이 좋다. 



[그림3]


다음시간에는 gcc에서 자주 사용하는 make에 대하여 알아보도록 하겠다. 


'컴퓨터 공부 > 리눅스' 카테고리의 다른 글

[리눅스] 디스크 남은 용량확인하기  (0) 2013.07.01
[리눅스] iptables란  (1) 2013.06.26