@shorttitlepage GNU Make
Copyright (C) 1988, '89, '90, '91, '92, '93, '94, '95, '96, '97 Free Software Foundation, Inc.
Published by the Free Software Foundation
59 Temple Place -- Suite 330,
Boston, MA 02111-1307 USA
Printed copies are available for $20 each.
ISBN 1-882114-80-9
ÀÌ ¸Å´º¾óÀÇ ÀÖ´Â ±×´ë·Î º¹»çÇÏ°í ¹èÆ÷ÇÏ´Â °ÍÀº, ¸ðµç º¹»çº»¿¡ ÀúÀÛ±ÇÀ» ¸í½ÃµÇ°í ÀÌ ¹®Àå ÀÚü°¡ À¯ÁöµÈ´Ù´Â Á¶°Ç ÇÏ¿¡, Çã¿ëµÈ´Ù. (Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.)
ÀÌ ¸Å´º¾óÀÇ º¯Á¶µÈ ¹öÀüÀ» º¹»çÇÏ°í ¹èÆ÷ÇÏ´Â °ÍÀº, Àüü °á°ú ÀÛ¾÷ÀÌ ÀÌ°Í°ú µ¿ÀÏÇÑ ¹®Àå Á¶°ÇÇÏ¿¡¼ ¹èÆ÷µÈ´Ù¸é, ÀÖ´Â ±×´ë·Î º¹»çÇÏ´Â °Í¿¡ ´ëÇÑ Á¶°Çµé ÇÏ¿¡ Çã¿ëµÈ´Ù. (Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.)
ÀÌ ¸Å´º¾óÀ» ´Ù¸¥ ¾ð¾î·Î ¹ø¿ªÇÑ °ÍÀ» º¹»çÇÏ°í ¹èÆ÷ÇÏ´Â °ÍÀº, ÀÌ ¹®ÀåÀÌ Free Software Foundation¿¡ ÀÇÇؼ ½ÂÀÎµÈ ¹ø¿ªÀ¸·Î ¾²¿©Áú ¼ö ÀÖ´Ù´Â °ÍÀ» Á¦¿ÜÇÏ°í, º¯Á¶ ¹öÀü¿¡ ´ëÇÑ À§ÀÇ Á¶°Çµé ÇÏ¿¡¼, Çã¿ëµÈ´Ù. (Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation.) Cover art by Etienne Suvasa.
make
°³°ü(Overview of make
)
make
À¯Æ¿¸®Æ¼´Â Ä¿´Ù¶õ ÇÁ·Î±×·¥ÀÇ ¾î¶² Á¶°¢µéÀÌ ÀçÄÄÆÄÀϵǾß
ÇÏ´ÂÁö¸¦ ÀÚµ¿À¸·Î °áÁ¤ÇÏ°í ±×°ÍµéÀ» ÀçÄÄÆÄÀÏÇÏ´Â ¸í·ÉµéÀ» ¹ßÇàÇÑ´Ù.
ÀÌ ¸Å´º¾óÀº GNU make
¸¦ ¼³¸íÇÑ´Ù. GNU make
¸®Â÷µå
½ºÅ縸(Richard Stallman)°ú ·Ñ·£µå ¸Æ±×·¡½º(Roland McGrath)¿¡ ÀÇÇؼ
°³¹ßµÇ¾ú´Ù. GNU make
´Â
IEEE Standard 1003.2-1992 (POSIX.2).
ÀÇ section 6.2¿Í ȣȯµÈ´Ù.
¿ì¸®ÀÇ ¿¹Á¦µéÀº C ÇÁ·Î±×·¥µéÀ» º¸¿©ÁÙ °ÍÀÌ´Ù. ÀÌ°ÍÀÌ °¡Àå
ÀϹÝÀûÀ̱⠶§¹®ÀÌÁö¸¸ ¿©·¯ºÐÀº ¾î¶² ÇÁ·Î±×·¥ ¾ð¾î¶óµµ ±×°ÍÀÇ ÄÄÆÄÀÏ·¯°¡
½© ¸í·ÉÀ¸·Î ½ÇÇàµÉ ¼ö ÀÖ´Ù¸é make
¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
make
¸¦ »ç¿ëÇϱâ À§Çؼ ÁغñÇÏ·Á¸é ¿©·¯ºÐÀº ¿©·¯ºÐÀÇ ÇÁ·Î±×·¥ ¾È¿¡
ÀÖ´Â ÆÄÀÏµé °£ÀÇ °ü°è¸¦ ¼³¸íÇÏ°í, °¢ ÆÄÀÏÀ» ¾÷µ¥ÀÌÆ®ÇÏ´Â ¸í·ÉµéÀ»
Á¦°øÇÏ´Â makefileÀ̶ó°í ºÒ¸®´Â ÆÄÀÏÀ» ¹Ýµå½Ã ÀÛ¼ºÇØ¾ß ÇÑ´Ù.
ÀüÇüÀûÀ¸·Î ÇÁ·Î±×·¥ ¾È¿¡¼ ½ÇÇà ÆÄÀÏÀº, ¼Ò½º ÆÄÀϵéÀ» ÄÄÆÄÀÏÇؼ
¸¸µé¾îÁö´Â ¿ÀºêÁ§Æ® ÆÄÀϵé·ÎºÎÅÍ ¾÷µ¥ÀÌÆ®µÈ´Ù.
ÀÏ´Ü Àû´çÇÑ makefileÀÌ Á¸ÀçÇÏ¸é ¿©·¯ºÐÀÌ ¾î¶² ¼Ò½º ÆÄÀϵéÀ» º¯°æÇÏ´Â ¶§¸¶´Ù ´ÙÀ½°ú °°Àº ½© ¸í·ÉÀÌ ¸ðµç ÇÊ¿äÇÑ ÀçÄÄÆÄÀϵéÀ» ¼öÇàÇÏ´Â µ¥ ÃæºÐÇÏ´Ù:
make
make
ÇÁ·Î±×·¥Àº makefile µ¥ÀÌÅͺ£À̽º¿Í ÆÄÀϵéÀÇ
¸¶Áö¸·-º¯°æ ½Ã°£µéÀ» »ç¿ëÇؼ ¾î¶² ÆÄÀϵéÀÌ ¾÷µ¥ÀÌÆ®µÇ¾î¾ß ÇÏ´ÂÁö¸¦
°áÁ¤ÇÑ´Ù. ÀÌ·± ÆÄÀÏµé °¢°¢¿¡ ´ëÇؼ µ¥ÀÌÅͺ£À̽º¿¡ ±â·ÏµÈ ¸í·ÉµéÀ»
¼öÇàÇÑ´Ù.
¾î¶² ÆÄÀϵéÀÌ ÀçÄÄÆÄÀϵǾî¾ß ÇÏ´ÂÁö ¶Ç´Â ¾î¶»°Ô ÀçÄÄÆÄÀϵǾî¾ß ÇÏ´ÂÁö¸¦
Á¦¾îÇϱâ À§Çؼ, ¿©·¯ºÐÀº make
¿¡ ´ëÇÑ ¸í·É ¶óÀÎ ¸Å°³º¯¼öµéÀ»
Á¦°øÇÒ ¼ö ÀÖ´Ù. See section make
½ÇÇà ¹æ¹ý(How to Run make
).
¿©·¯ºÐÀÌ make
ÀÇ ÃʽÉÀÚÀ̰ųª ÀϹÝÀûÀÎ ¼³¸íÀ» ã°í ÀÖ´Â »ç¶÷À̶ó¸é
°¢ ÀåÀÇ ³ªÁß ¼½¼ÇµéÀº °Ç³Ê ¶Ù°í ù¹ø° ¸î ¼½¼ÇµéÀ» Àоî¶ó.
°¢ Àå¿¡¼ ù¹ø° ¸î°¡Áö ¼½¼ÇµéÀº °³·ÐÀûÀÎ ¶Ç´Â ÀϹÝÀûÀÎ Á¤º¸µéÀ» ´ã°í
ÀÖ°í ³ªÁßÀÇ ¼½¼ÇµéÀº Ư¼öÇÑ ¶Ç´Â ±â¼úÀûÀÎ Á¤º¸µéÀ» ´ã°í ÀÖ´Ù.
2ÀåÀº ¿¹¿ÜÀÎ µ¥, section Makefile ¼Ò°³(An Introduction to Makefiles), ¸ðµç
°ÍµéÀÌ °³·ÐÀûÀÌ´Ù.
´Ù¸¥ make
ÇÁ·Î±×·¥µé¿¡ Ä£¼÷ÇÏ´Ù¸é, GNU make
°¡ °®°í ÀÖ´Â
°³¼±Á¡µéÀ» ¼³¸íÇÑ section GNU make
ÀÇ ±â´É, °ú, ´Ù¸¥
°ÍµéÀÌ °¡Áö°í ÀÖÁö¸¸ GNU make
´Â °®°í ÀÖÁö ¾Ê´Â ¸î°¡Áö
°Íµé¿¡ ´ëÇÑ ¼³¸íÀ» ÇÑ section ºñȣȯ¼º°ú ºüÁø ±â´Éµé(Incompatibilities and Missing Features), ¸¦ º¸±â ¹Ù¶õ´Ù.
ºü¸¥ ¿ä¾àÀ» À§Çؼ´Â section ¿É¼ÇµéÀÇ ¿ä¾à(Summary of Options), section ºü¸¥ ·¹ÆÛ·±½º(Quick Reference), ±×¸®°í section Ư¼ö ³»Àå Ÿ°Ù À̸§(Special Built-in Target Names)À» º¸±â ¹Ù¶õ´Ù.
GNU make
¿¡ ¹®Á¦¸¦ ¹ß°ßÇÏ¿´°Å³ª ¹ö±×¸¦ ¹ß°ßÇß´Ù¸é ±×°ÍÀ»
°³¹ßÀڵ鿡°Ô ¾Ë·Á Áֱ⠹ٶõ´Ù; ¿ì¸®´Â ¿ì¸®°¡ ±×°ÍÀ» °íÄ¡±â¸¦ ¿øÇÑ´Ù´Â
°Í¿Ü¿¡´Â ¾Æ¹«°Íµµ ¾à¼ÓÇÒ ¼ö ÀÖ´Â °ÍÀÌ ¾ø´Ù.
¹ö±×¸¦ ¸®Æ÷Æ®Çϱâ Àü¿¡ ½ÇÁ¦ ¹ö±×¸¦ ½ÇÁ¦·Î ¹ß°ßÇß´ÂÁö È®ÀÎÇϱ⠹ٶõ´Ù. Á¶½É½º·´°Ô ¹®¼µéÀ» ´Ù½Ã ÀÐ°í ±×¸®°í ±×°ÍÀÌ ¿©·¯ºÐÀÌ ÇÏ°íÀÚ ÇÏ´Â °ÍÀ» ÇÒ ¼ö ÀÖ´Ù°í ½ÇÁ¦·Î ¸»ÇÏ´ÂÁö º¸±â ¹Ù¶õ´Ù. ¿©·¯ºÐÀÌ ¾î¶² °ÍÀ» ÇÒ ¼ö ÀÖ´ÂÁö ¾ø´ÂÁö Àß ¸ð¸£°Ú´Ù¸é ±×°Íµµ °°ÀÌ º¸°íÇØÁֱ⠹ٶõ´Ù; ±×°ÍÀº ¹®¼ÀÇ ¹ö±×ÀÎ °ÍÀÌ´Ù!
¹ö±×¸¦ ¸®Æ÷Æ®Çϱâ Àü¿¡ ±×¸®°í, ±×°ÍÀ» ¿©·¯ºÐ ½º½º·Î °íÄ¡µµ·Ï ³ë·ÂÇϱâ
Àü¿¡, ±×°ÍÀ» ±× ¹®Á¦¸¦ ´Ù½Ã ¸¸µå´Â °¡´ÉÇÑ ÇÑ °¡Àå ÀÛÀº makefile·Î
ºÐ¸®Çصµ·Ï Çغ¸¶ó. ±×¸®°í ³ª¼ ±× makefile°ú make
°¡ ¿©·¯ºÐ¿¡°Ô
¸¸µé¾î ³»´Â Á¤È®ÇÑ °á°úµéÀ» ¿ì¸®¿¡°Ô º¸³»±â ¹Ù¶õ´Ù. ¶ÇÇÑ ¿©·¯ºÐÀÌ ÀϾ
°ÍÀ̶ó°í ±â´ëÇÏ´Â °ÍÀ» ¸»ÇØÁֱ⠹ٶõ´Ù; ÀÌ°ÍÀº ¿ì¸®°¡
±× ¹®Á¦°¡ ½ÇÁ¦·Î ¹®¼¿¡ ÀÖ´Â °ÍÀÎÁö¸¦ °áÁ¤ÇÒ ¼ö ÀÖµµ·Ï µµ¿ï °ÍÀÌ´Ù.
ÀÏ´Ü ¿©·¯ºÐÀÌ Á¤È®ÇÑ ¹®Á¦¸¦ ¾ò¾ú´Ù¸é ´ÙÀ½ ÁÖ¼Ò·Î À̸ÞÀÏ·Î º¸³»Áֱ⠹ٶõ´Ù:
bug-make@gnu.org
¿©·¯ºÐÀÌ »ç¿ëÇÏ´Â make
ÀÇ ¹öÀü¹øÈ£¸¦ Æ÷ÇÔ½ÃÄÑ Áֱ⠹ٶõ´Ù.
¿©·¯ºÐÀº ÀÌ Á¤º¸¸¦ `make --version'À̶ó´Â ¸í·ÉÀ¸·Î ¾òÀ» ¼ö ÀÖ´Ù.
¶ÇÇÑ ¿©·¯ºÐÀÌ »ç¿ëÁßÀÎ ¸Ó½®°ú ¿î¿µÃ¼Á¦ÀÇ Á¾·ù¸¦ Æ÷ÇÔ½ÃÄÑ Áֱ⠹ٶõ´Ù.
°¡´ÉÇÏ´Ù¸é configuration °úÁ¤ Áß¿¡ »ý¼ºµÈ `config.h'¶ó´Â ÆÄÀÏÀÇ
³»¿ëµµ Æ÷ÇÔ½ÃÄÑ Áֱ⠹ٶõ´Ù.
Go to the first, previous, next, last section, table of contents.