[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
make
의 개관make
유틸리티는 큰 프로그램 내의 어떤 부분들을 다시 컴파일해야
하는지 자동으로 판단하고, 다시 컴파일하는 명령어를 실행한다. 이
매뉴얼에서는 Richard Stallman과 Roland McGrath가 구현한 GNU
make
에 대해 설명한다. GNU make
는 IEEE Standard
1003.2-1992(POSIX.2)의 section 6.2에 따르는 프로그램이다.
여기서 우리가 사용하는 예제는 C 프로그램이다. C 프로그램이 가장 많이
쓰이기 때문에 여기서 C 프로그램을 사용했지만, make
는 셸에서
실행시킬 수 있는 어떠한 프로그래밍 언어의 컴파일러와도 함께 사용할 수
있다. 게다가 make
는 프로그램에만 사용되도록 국한된 도구가
아니다. 어떤 파일이 바뀌었을 때 그 파일로부터 자동으로 또 다른 파일을
갱신해야 하는 경우가 있는 어떠한 작업에서도 make
를 사용할 수
있다.
• 준비 | ||
1.1 이 매뉴얼 읽는 법 | ||
1.2 문제점과 버그 |
make
를 사용할 준비 작업으로,
메이크파일(makefile)이라고 하는 파일을 작성해야 한다.
메이크파일(makefile)에는 프로그램 내의 파일들 사이의 관계 및 각 파일을
갱신할 때 사용하는 명령어들이 들어 있다. 흔한 경우로, 어떤 프로그램에서
실행 파일은 오브젝트 파일에서부터 갱신되고, 그 오브젝트 파일은 소스
파일을 컴파일해서 만들어 진다.
일단 적당한 메이크파일(makefile)이 있으면, 소스 파일을 바꿨을 때마다 다음 간단한 셸 명령어를 실행하면:
make |
모든 재컴파일 과정을 수행한다. make
프로그램은 메이크파일을
데이타베이스로 사용하고 파일의 마지막 변경 시각을 보고 어떤 파일이
업데이트되어야 할 지 결정한다. 각 파일에 대해서 데이타베이스에 쓰여
있는 명령어를 실행한다.
어떤 파일이, 어떻게 재컴파일되야 하는지 지정하고 싶을 때 make
이
명령행에 인자를 쓴다. See section make
실행하는 법.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
make
를 처음 접하거나, 일반적인 소개를 찾고 있다면, 각 장의
첫부분에 있는 절을 읽고, 나머지 절들은 그냥 지나친다. 각 장에서
첫부분의 절들은 소개 혹은 일반적인 정보를 담고 있고, 나중의 절들은
특수한 경우 혹은 기술적인 정보를 담고 있다.
이미 다른 make
프로그램에 익숙해져 있다면, see section Features of GNU make
에 GNU make
만이 가진 더 좋은 기능이
열거되어 있고, see section Incompatibilities and Missing Features에 다른 make
프로그램이 가진 기능들 중에서 GNU
make
에 없는 기능들을 설명해 놓았다.
간단한 요약을 보려면, Summary of Options, Quick Reference, 그리고 Special Built-in Target Names를 보라.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
GNU make
에 문제가 있거나, 버그를 찾았다고 생각되면 그 문제점을
개발자에게 보고해 주기 바란다; 아무것도 약속해 줄 수는 없지만 우리는 그
문제점을 고치려고 할 것이다.
버그를 보고하기 전에, 정말 진짜 버그를 찾아냈는지 확인하라. 주의 깊게 문서를 다시 읽어보고, 문서에서 시도했던 일을 정말로 할 수 있다고 쓰여 있는지 확인한다. 무엇을 할 수 있고 할 수 없는지 분명히 알 수 없다면, 그것도 보고해 주기 바란다; 이건 문서의 버그이다!
버그를 보고하거나, 손수 고치려고 시하기 전에, 버그를 다시 만들어 낼 수
있는 가능한한 작은 메이크파일을 만들어 보기 바란다. 그 다음에 그
메이크파일과 make
를 실행한 정확한 결과를 보내주기 바란다. 또
어떤 일이 일어나길 기대했는지 쓴다; 이렇게 하면 문서에 어떤 문제점이
있는지 파악하기가 쉬워진다.
정확한 문제점을 알아냈으면, 전자메일을 다음 주소로 보낸다:
bug-make@gnu.org |
make
의 버전 번호를 포함해 주기 바란다. 버전 번호는 ‘make
--version’으로 알아 낼 수 있다. 사용중인 기계와 운영체제이 종류를
포함하는 걸 잊지 말아야 한다. 가능하다면, 컨피그 과정(configuration
process)에서 만들어 지는 ‘config.h’ 파일의 내용을 포함하면 좋다.
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated by Autobuild on June 20, 2017 using texi2html 1.82.