Build   번역 , 빌드 , 빌드 과정

(2024-09-30)

make 빌드, Object Code, 목적 코드, Object File, 오브젝트 파일, 목적 파일, Object Program, 목적 프로그램, 소스 코드 오브젝트 코드 비교


1. [전산]  번역 과정 프로그램 또는 코드를 다른 언어 형식으로 변환하는 것

  ㅇ 번역 과정 (Translation)
     - 소스 파일 -> 어휘 분석 -> 구문 분석 -> 중간 코드 생성 -> 목적 파일

  ※ [참고]  소스 코드/파일, 오브젝트 코드/파일  비교
     - 소스 코드/원시 코드 (Source Code) / 소스 프로그램 
        . 프로그래밍 언어를 사용하여 텍스트로 기술된 것
     - 소스 파일/원시 파일 (Source File)
        . 소스 코드파일 형태로 저장된 것
     - 오브젝트 코드/목적 코드 (Object Code) / 목적 프로그램
        . 소스 코드기계어로 번역(컴파일)되어 기술된 것
     - 오브젝트 파일/목적 파일 (Object File)
        . 소스 파일기계어로 번역(컴파일)되어 파일 형태로 저장된 것


2. [전산]  빌드 과정 (Build)선행처리 (Preprocessing)
  ㅇ 번역 (Translation) 또는 컴파일 (Compile)
  ㅇ 결합 (Assemble) 
  ㅇ 링킹(Linking) & 로딩(Loading)
     - (링킹 : 오브젝트 파일들을 최종적으로 사용 가능하게 변환하는 것)

  ※ 빌드 : 작성된 고급 프로그래밍 언어기계어로 바꿔, 
     - 실행 가능 코드로 만드는 전 과정을 일컬음


3. [전산]  빌드 자동화  :  make 빌드

  ㅇ 빌드 바이너리를 생성하기 위한 기본 규칙을 제공하는, 빌드 자동화 도구
     - 각 파일 사이의 의존성,시간적절성 등을 파악함
        . 파일타임스탬프를 비교해서, 다시 생성할 필요가 있는지 판단하는 등
     - 부분 재 컴파일, 재 링크 작업 등의 자동화에 쓰임
        . 부분 수정이 가해졌을 때, 최소 처리 만으로, 전체 파일 간의 의존적 일관성을 유지시킴
  ㅇ 빌드 프로세스 : 소스 파일에서 실행 파일로의 빌드 구축
     -  전처리  ->  컴파일  ->  어셈블리  ->  링크프로그램 소스 부분 수정과 이미 컴파일라이브러리 간을 결합하여,
     - 대규모 어플리케이션라이브러리를 구축할 때 유용
  ㅇ 규칙 파일 : Makefile
     - [형식] 결과물 : 소스 (하나의 결과물에 여러 소스 연결 가능)
        . (으로 한 칸 띄움) 변환 수단 (명령어,배치 파일 등)


4. [전산]  (참고사항)

  ㅇ 목적 파일 / 오브젝트 파일 (Object File)  :  재배치 가능 목적 파일 (Relocatable Object File)
     - 모듈별로 개발되어 컴파일된 것
        . 실제 특정 주소로 지정되지 않고, 
        . 임의의 물리 메모리 위치에 적재 가능토록, 만들어진 것으로,
        . 주로, 빌드 과정의 초기 산출물들

  ㅇ 실행 가능 목적 파일 (Executable Object File)
     - 여러 재배치 가능한 오브젝트 파일로부터 실행 파일이 생성됨

  ㅇ 목적 라이브러리 파일 / 오브젝트 라이브러리 파일 (Object Library File)  :  정적 라이브러리
     - 모듈오브젝트 파일들을 여럿 합쳐서, 1개의 라이브러리 파일로 만든 것

  ㅇ 공유 목적 라이브러리  :  동적 라이브러리
     - 재배치 가능 목적 파일 여러 개로부터 만들어짐

[번역/번역기 ⇩]1. 번역   2. 어셈블러   3. 인터프리터   4. 컴파일러  

  1. Top (분류 펼침)      :     1,591개 분류    6,513건 해설

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]       편집·운영 (차재복)          편집 후원          편집 이력 (금일 3건)