3. C 언어의 컴파일 과정

알파로그·2023년 11월 2일
0

Computer Science

목록 보기
15/17
 test.c
   |
   V
1. 전처리기
2. 컴파일러
3. 어셈블러
4. 링커
   |
   V
 test.exe

1. 전처리 과정

test.c → test.i

  • 본격적으로 컴파일 하기 전에 처리하는 작업
  • 외부에 선언된 다양한 소스코드, 라이브러리를 포함
  • 프로그래밍의 편의를 위해 작성된 매크로 변환
  • 컴파일할 영역 명시

2. 컴파일 과정

test.i → test.s

  • 전처리가 완료되어도 여전히 소스코드 이므로,
    해당 코드를 저급 언어(어셈블리 언어) 로 변환하는 과정

3. 어셈블 과정

test.s → test.o

  • 어셈블리어를 기계어로 변환
  • 목적 코드를 포함하는 목적 파일이 됨

4. 링킹 과정

test.o → test.exe

  • 목적 파일을 실행파일로 변환하는 과정
    • 둘 다 기계어로 이루어진 파일이다.
  • 목적 파일을 실행하기 위해선 링킹을 거처 실행파일로 변환시켜야 한다.
    • 복수의 목적 파일 (객체들) 을 연결해 서로 참조할 수 있게 하는 작업
profile
잘못된 내용 PR 환영

0개의 댓글