You cannot see this page without javascript.

make - 01 make 란?

Programing 조회 수 610 추천 수 0 2017.02.22 16:54:07

make는 주어진 조건으로부터 대상을 만들어 내는 다목적 프로그램으로, 다수의 소스 파일로 구성된 큰 프로그램 중 어떤 파일이 변경되어 재 컴파일이 필요한지 판단해 프로그램 재구성 작업을 효율적으로 수행하는 역할을 한다. 그리고 이때 어떤 일을 해야 하는지 make에 알려줄 정보를 담고있는 것이 makefile 이다.

 

001.png

 

[그림1] 여러 파일로 구성된 프로그램

 

 

특정 소스파일이 수정되면 모든 파일이 다시 컴파일되고 링크하여 새로운 a.out을 생성하게 된다. 이런 경우 모든 소스를 컴파일을 하는 것은 비 효율적이므로, 수정된 파일만 자동으로 알아내어 컴파일하고 그 외 오브젝트 파일은 그대로 이용하게 하는 툴이 바로 make 이다.

 

Make 란?

복잡한 컴파일 작업을 자동화하는 프로그래밍 언어이며, make를 적절히 활용하면 불필요한 컴파일 작업을 줄여주므로 프로그램 개발 시간을 크게 절약할 수 있다.

 

프로그램이 여러 개의 소스 파일로 이루어졌다면, 모든 소스 파일을 컴파일 하기보다는 컴파일을 마지막으로 한 시점으로부터 변경된 소스 파일만 컴파일한다. 컴파일 여부는 소스 파일과 오브젝트 파일의 갱신시간을 비교하여 결정하게 된다.

첨부
엮인글 :
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
189 Linux 변경사항이 유지되는 리눅스를 USB메모리에 만들기(우분투 계열) [13] LynX 2015-01-07 583
188 CentOS centos7 groonga install LynX 2017-12-04 583
187 Linux 04 - 와이어샤크,접근제어,방화벽,텔넷,패킷 file [12] LynX 2012-11-29 585
186 Network VLAN 설정 ② Trunk mode / Routing file [12] LynX 2015-04-29 597
185 APM MySQL 5.7 바이너리 Archive 설치 file LynX 2017-02-02 603
» Programing make - 01 make 란? file LynX 2017-02-22 610
183 Printer cura usb connection LynX 2018-07-06 614
182 Linux opensuse yum repository 추가 [13] LynX 2014-12-23 636
181 Linux letsencrypt wildcard LynX 2018-07-26 638
180 Linux Fedora 크롬 루트로 실행 LynX 2014-06-27 645
179 CentOS CentOS7 커널 업데이트 LynX 2018-04-23 645
178 CentOS7 ▒ Doly의 CentOS7 강좌30 12. 네트워크 보안설정 12.2 iptables 서비스 (1/3) file [11] LynX 2015-06-09 646
177 Linux forever 설치 [18] LynX 2015-06-10 660
176 CentOS network card setup [1] LynX 2016-04-20 660
175 HTML Tag 모바일 웹에서 동영상 재생방법 LynX 2013-07-13 661
174 Linux LFS/Introduction - 소개 [8] LynX 2014-08-06 669
173 CentOS7 ▒ Doly의 CentOS7 강좌28 12. 네트워크 보안설정 12.1 firewalld (1/2) file [10] LynX 2015-06-09 671
172 Windows XP 핫픽스 통합 시디 만들기 [18] LynX 2013-06-20 675
171 Linux CentOS (5.x, 6.x) - Apache Web Server 2.4 file LynX 2014-06-26 684
170 Linux Linux 환경에서 ACE framework 설치하기 [11] LynX 2015-01-12 690

XE Login