[make] # 0. make 란 무엇인가?

문연수·2023년 2월 2일
0

make

목록 보기
1/6
post-thumbnail

1. make 란 무엇인가?

make 는 명령을 생성하는 유틸리티이다. make 유틸리티는 기술 파일(description file)과 몇 가지 일반 템플릿을 사용하여 유닉스 셸에서 실행되는 각종 명령들을 만들어낸다. 이를 통해 임시 파일을 제거하는 데서부터, 복잡한 프로그램 그룹의 최종 실행 파일을 만드는 데 이르기까지 일련의 작업을 수행한다.

 프로젝트를 수행하는 과정에서 수차례 반복되는 과정을 make 유틸리티를 통해 간단하게 처리할 수 있다. 전체 파일들 간의 관계를 일단 한 번만 기록해주면 간단한 명령으로 make 유틸리티가 자동으로 갱신 작업을 수행하게 된다.

2. make 유틸리티의 가치

  1. 빠른 학습
    make 는 특히 기본 규칙을 아주 빠르게 익힐 수 있다. 따라서 이 책을 통해 make 의 기본을 익히고나면 이 책을 읽느라 들인 만큼이나 시간을 절약할 수 있다는 사실을 절감하게 된다.

  2. 팀워크
    대규모 소프트웨어 개발 프로젝트에서 팀워크가 무엇보다도 중요한데, make 가 복잡한 프로젝트 구성요소들 간의 의존관계를 추적하면서 프로젝트 참여자들 각각의 업무를 조율해 팀워크를 진작시켜주는 것 이다.

  3. 폭 넓은 활용 분야
    make 의 주 영역이 C 프로그래밍이란 점은 분명하지만, make 구문에 익숙해진 소프트웨어 개발자라면 그 외에도 적용할 수 있는 영역을 쉽사리 찾아낼 수 있다. 실제로 make 를 소프트웨어 설치, 문서 포맷, 임시 파일 정리(삭제) 등 일반 용도로 폭넓게 활용하는 사례가 적지 않다.

3. make 를 사용하면 좋은 또다른 이유

make 가 지신 섬세한 기능들을 하나둘씩 익히다보면 어느새 유닉스 시스템을 기반으로 하는 프로그램 개발 습관이 자연스레 몸에 익게 된다. 명령 행들의 구문과 파일명을 해석하는 등 make 가 지닌 기능을 배우다보면 각종 유닉스 셸과 유틸리티에서 사용되는 표준들을 하나씩 둘씩 자연스럽게 익힐 수 있다.

make 유틸리티에서는 개발자가 만들려는 파일들 간의 의존 관계를 추적하는 반복적인 과정에 의해 어떤 명령을 실행할지 결정된다. 따라서 make 유틸리티는 일반적으로 사용되는 유틸리티들 가운데 프롤로그(Prolog) 처럼 논리학에 기초를 둔 고급 프로그래밍 언어의 개념을 대변하는 유일한 유틸리티라고 볼 수 있다.

출처

[책] make: 유닉스, 리눅스 필수 유틸리티 (앤드류 오람, 스티브 탈보트 저; 이석주 역)

profile
2000.11.30

0개의 댓글