2015년 8월 13일 목요일

C 언어 - 컴파일러가 하는 일

컴파일 과정

컴파일러는 2가지 과정을 거쳐 소스 코드를 실행가능한 기계어로 변경한다.
  • 컴파일
  • 링크

컴파일
.c 파일을 .o 나 .obj 등의 object 파일라는 형태로 변경한다.

링크
object 파일들을 엮어서 하나의 실행 파일 또는 라이브러리 파일 형태로 만든다.
링크 과정에서 object 파일이 참조하는 함수가 존재하는지 검사하게 된다.

예)

util.c, main.c, ....c -> util.o, main.o, ....o -> hello

여러 .c 파일들이 컴파일 과정을 통해 .o 파일로 컴파일 된다.
.o 파일들은 하나로 합쳐져 hello 라는 실행 파일로 만들어 진다.

오류

철자를 틀리거나 존재하지 않는 함수를 참조하는 등의 컴파일 과정에 문제를 오류라고 한다.

로그

컴파일러가 컴파일 과정과 컴파일 과정 중 있는 오류 등을 화면에 출력하는 내용을 로그라고 한다.
로그에는 문제를 수정하기 위한 중요한 정보가 담겨 있기 때문에 로그를 보고 문제 원인을 잘 파악하는 능력이 필요하다.
문제에 따라 로그의 형태는 다양하기 때문에 그 때 그 때 문제를 해결 과정을 잘 숙지하는 것이 노하우가 된다.

컴파일러가 컴파일 과정과 문제가 있을 때 해당 내용을 화면에 출력하듯이 앞으로 우리가 개발할 프로그램도 마찬가지로 실행 과정과 문제가 되는 부분이 있을 때 화면에 알아보기 쉽게 표시하는 일은 스스로 프로그램을 유지보수 하는데 중요한 습관이 된다.

댓글 없음:

댓글 쓰기