프로그래밍 언어

Compile 과 Build?

두번째하늘 2021. 9. 6. 20:51
728x90

Compile(컴파일)

컴파일이란 소스코드를 컴파일러를 통해 컴퓨터가 이해하는 기계어로 만드는 과정이다.  (고급언어를 저급언어로 번역)

여기서 말하는 컴파일러 중 다양한 예시가 Visual Studio Code나 X Code 인 것이다 

 

Build(빌드)

빌드는 기본적으로 실행파일을 만드는 것을 의미한다. 

사실 빌드는 컴파일 + 링크 작업이라 할 수 있다. 

여기서 말하는 '링크'란 컴파일의 결과물인 목적코드들을 최종 실행 가능한 실행파일을 만들기 위해 연결, 병합해주는 작업.

 

1. 소스파일을 전처리하기

2. 전처리 끝난 파일을 컴파일하여 개체파일 만들기(개체 파일은 CPU가 해석할 수 있는 기계어 파일이지만 바로 실행 불가능)

3. 만들어진 개체파일에 startup code를 결합하는 과정을 수행(이를 링크라고 함) startup code는 프로그램을 실행하기 전에 필요한 준비작업을 수행하며 main함수를 호출하여 우리가 작성한 프로그램의 코드가 실행되도록 한다.

(따라서 프로그램에는 항상 main 함수가 필요.)

728x90