임베디드/리눅스(Linux)

리눅스 빌드 시스템(4) make 문법

마달랭 2024. 9. 12. 15:48

목차

  1. 리눅스 빌드 시스템(1) gcc Linux Build System gcc
  2. 리눅스 빌드 시스템(2) make Linux Build System make
  3. 리눅스 빌드 시스템(3) cmake Linux Build System cmake

 

 

개요

makefile을 하기 전 간단하게 make 문법에 대해 소개한다.

make는 표준화된 문법을 사용한다.

 

Makefile 작성을 도와주는 cmake도 있지만, 다른 사람이 작성한 Makefile을 수정해야 할 일도 있다.

 

 

예제

새 디렉토리를 생성해 준 뒤 Makefile 파일을 만들어 주고 내용을 작성해 준다.

 

 

Target 타겟

 

목표 파일 이름, 빌드하려는 최종 결과물

  • 1개 이상의 Target 이 있어야 한다.
  • comment 를 실행한다. ( 반드시 Tab 들여쓰기 해야 한다. )
  • make → 첫번째 Target HI 실행
  • make HI
  • make HELLO

 

 

Dependency 의존성

 

Target을 생성하기 위한 파일 목록, 의존성 Target을 먼저 수행하게 된다.

make HI 실행 시 Target HI를 하려고 보니 HELLO가 의존성이 명시되어 있어, HELLO를 우선 실행하게 된다.

 

 

 

Variable 변수

  • 소괄호 ( ) or 중괄호 { } 를 붙여서 사용한다.
  • $ 를 앞에 붙여서 사용한다.
  • 가독성을 위해 script 최상단에 작성한다.

 

Comment 주석

 

#을 이용해서 주석을 표시한다. 공식적으로 한 줄 주석만 지원된다.

 

 

특수 변수

 

자동 변수라고도 하며, 자주 사용 되는 값들을 참조한다.

  • $@ : Target 이름
  • $^ : Dependency 목록 전체
  • $< : Dependency 목록 중 첫 번째 등등이 있다.

 

 

= 연산자

= 연산자는 다양한 variation을 갖는다.

 

+= 연산자는 기존의 변수에 우측의 값을 덧 붙일 수 있다.

 


 

:= ( Simple Equl )

Script 순서대로 현재 기준에서 값을 넣는다.

 

= ( Reculsive Equl )

최종 변수 결과를 집어 넣는다.

 

 

 

728x90