Go to the first, previous, next, last section, table of contents.


make ÀÇ ¿¡·¯(Errors Generated by Make)

´ÙÀ½Àº make ¿¡ ÀÇÇؼ­ »ý¼ºµÉ ¼ö ÀÖ´Â °¡Àå ÀϹÝÀûÀÎ ¿¡·¯µéÀÇ ¸®½ºÆ®ÀÌ¸ç ±×°ÍµéÀÌ ÀǹÌÇÏ´Â ¹Ù¿Í ±×°ÍµéÀ» °íÄ¡´Â ¹æ¹ý¿¡ ´ëÇÑ Á¤º¸ÀÌ´Ù.

¶§¶§·Î make ¿¡·¯µéÀº, Ưº°È÷ ¸í·É ½ºÅ©¸³Æ® ¶óÀο¡¼­ - Á¢µÎ»ç°¡ ÀÖÀ» ¶§³ª ¸í·É ¶óÀÎ ¿É¼ÇÀ¸·Î½á -k °¡ ÀÖÀ» ¶§, Ä¡¸íÀûÀÎ °ÍÀÌ ¾Æ´Ï´Ù. Ä¡¸íÀûÀÎ ¿¡·¯µéÀº *** ¹®ÀÚ¿­ÀÌ ±× ¾Õ¿¡ ºÙ´Â´Ù.

¿¡·¯ ¸Þ½ÃÁöµéÀº ¸ðµÎ ÇÁ·Î±×·¥(º¸Åë `make')ÀÇ À̸§ÀÌ ¾Õ¿¡ ºÙ°Å³ª, ¿¡·¯°¡ makefile ¾È¿¡ ÀÖ´Â °ÍÀ̶ó¸é ¹®Á¦¸¦ ´ã°í ÀÖ´Â ÆÄÀÏ°ú ¶óÀγѹö°¡ ¾Õ¿¡ ºÙ´Â´Ù.

¾Æ·¡ Å×ÀÌºí¿¡¼­ ÀÌ·± °øÅë Á¢µÎ»çµéÀÌ ºüÁ®ÀÖ´Ù.

`[foo] Error NN'
`[foo] signal description'
ÀÌ·± ¿¡·¯µéÀº ½ÇÁ¦·Î make ¿¡·¯µéÀÌ ÀüÇô ¾Æ´Ï´Ù. ±×µéÀº make °¡ ¸í·É ½ºÅ©¸³Æ®ÀÇ ÀϺηνá È£ÃâÇÑ ÇÁ·Î±×·¥ÀÌ, make °¡ ½ÇÆзΠÇؼ®ÇÏ´Â 0ÀÌ ¾Æ´Ñ ¿¡·¯ ÄÚµå (`Error NN') ¸¦ ¸®ÅÏÇϰųª ´Ù¸¥ ÀÌ»óÇÑ ½ºÅ¸ÀÏ·Î(¾î¶² Á¾·ùÀÇ ½Ã±×³Î°ú ÇÔ²²) Á¾·áÇÏ¿´´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. *** °¡ ¸Þ½ÃÁö¿¡ ºÙ¾î ÀÖÁö ¾ÊÀ¸¸é ¼­ºêÇÁ·Î¼¼½º°¡ ½ÇÆÐÇßÁö¸¸ makefile ÀÇ ±× ±ÔÄ¢ÀÌ Æ¯¼ö ¹®ÀÚ - ¸¦ ¾Õ¿¡ ´Þ°í À־ make °¡ ±× ¿¡·¯¸¦ ¹«½ÃÇÑ °ÍÀÌ´Ù.
`missing separator. Stop.'
ÀÌ°ÍÀº make ÀÇ ÀϹÝÀûÀÎ "Huh?" ¿¡·¯ ¸Þ½ÃÁöÀÌ´Ù. ÀÌ°ÍÀº make °¡ makefile ÀÇ ÀÌ ¶óÀÌÀ» ÆĽÌÇϸ鼭 ¿Ïº®ÇÏ°Ô ¼º°øÇÏÁö ¸øÇß´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ÀÌ°ÍÀº ±âº»ÀûÀ¸·Î "¹®¹ý ¿¡·¯(syntax error)" ¸¦ ÀǹÌÇÑ´Ù. ÀÌ·± ¸Þ½ÃÁö°¡ ³ª¿À´Â °¡Àå ÀϹÝÀûÀÎ ÀÌÀ¯µé ÁßÀÇ Çϳª´Â ¿©·¯ºÐÀÌ (¶Ç´Â ¸¹Àº MS-Windows ¿¡µðÅ͵éÀÇ °æ¿ì¿Í ºñ½ÁÇÏ°Ô, ¿©·¯ºÐÀÇ ¿¡µðÅÍ°¡) TAB ¹®ÀÚ ´ë½Å¿¡ °ø¹éµé·Î ¸í·É ½ºÅ©¸³Æ®µéÀ» µé¿©¾²±âÇÏ·Á°í ÇÏ´Â °ÍÀÌ´Ù. ¸í·É ½ºÅ©¸³Æ®¿¡ ÀÖ´Â ¸ðµç ¶óÀÎÀº ¹Ýµå½Ã TAB ¹®ÀÚ·Î ½ÃÀÛÇÏ´Â °ÍÀ» ±â¾ïÇÏÀÚ. 8°³ÀÇ °ø¹éÀº Àǹ̰¡ ¾ø´Ù.
`commands commence before first target. Stop.'
`missing rule before commands. Stop.'
ÀÌ°ÍÀº makefile ¿¡¼­ óÀ½À¸·Î ³ª¿À´Â °ÍÀÌ ¸í·É ½ºÅ©¸³Æ®ÀÇ ÀϺκÐÀÎ °Íó·³ º¸Àδٴ °ÍÀ» ÀǹÌÇÑ´Ù: ÀÌ°ÍÀº TAB ¹®ÀÚ·Î ½ÃÀÛÇÏ°í ÇÕ¹ýÀûÀÎ make ¸í·É(º¯¼ö ÇÒ´ç°ú °°Àº)ó·³ º¸ÀÌÁö ¾Ê´Â´Ù. ¸í·É ½ºÅ©¸³Æ®µéÀº Ç×»ó ¾î¶² Ÿ°Ù°ú ¿¬°áµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. µÎ¹ø° ÇüÅ´ ±× ¶óÀÎÀÌ Ã¹¹ø° °ø¹é¹®ÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ·Î½á ¼¼¹ÌÄÝ·ÐÀ» °¡Áø´Ù¸é »ý¼ºµÈ´Ù; make ´Â ÀÌ°ÍÀ», ¾î¶² ±ÔÄ¢ÀÇ "target: dependency" ¼½¼ÇÀ» ±×³É ¶°³µ´Ù´Â °ÍÀ¸·Î Çؼ®ÇÑ´Ù.
`No rule to make target `xxx'.'
`No rule to make target `xxx', needed by `yyy'.'
ÀÌ°ÍÀº make °¡ Ÿ°ÙÀ» ºôµåÇÒ ÇÊ¿ä°¡ ÀÖ´Ù°í ÆÇ´ÜÇßÁö¸¸ makefile ¾È¿¡¼­ ±×·¸°Ô ÇÏ´Â °Í¿¡ ´ëÇÑ, ¸í½ÃÀû ¶Ç´Â ¹¬½ÃÀû(µðÆúÆ® ±ÔÄ¢ µ¥ÀÌÅͺ£À̽º¸¦ Æ÷ÇÔÇؼ­) ±ÔÄ¢µé(instructions)µµ ãÀ» ¼ö ¾ø´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ±× ÆÄÀÏÀÌ ºôµåµÇ±â¸¦ ¿øÇÑ´Ù¸é ±× Å¸°ÙÀÌ ºôµåµÇ´Â ¹æ¹ýÀ» ¼³¸íÇÏ´Â ±ÔÄ¢À» Ãß°¡ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. ÀÌ ¹®Á¦ÀÇ ´Ù¸¥ °¡´É¼ºÀº makefile À» ¿ÀÀÚ(±× ÆÄÀÏ À̸§ÀÌ À߸øµÇ¾ú´Ù)Ç߰ųª ¼Ò½º Æ®¸®°¡ À߸øµÈ °æ¿ìÀÌ´Ù(±× ÆÄÀÏÀÌ ºôµåµÉ °ÍÀ¸·Î »ý°¢µÈ °ÍÀÌ ¾Æ´Ï°í ´ÜÁö Á¾¼Ó¹°ÀÌ´Ù).
`No targets specified and no makefile found. Stop.'
`No targets. Stop.'
ÀüÀÚ´Â ¸í·ÉÇà¿¡¼­ ºôµåµÉ Ÿ°ÙÀ» Çϳªµµ Á¦°øÇÏÁö ¾Ê¾Ò°í make °¡ ÀоîµéÀÏ makefile µéÀ» ãÀ»¼ö ¾ø´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ÈÄÀÚ´Â ¾î¶² makefile µéÀÌ Ã£¾ÆÁ³À¸³ª µðÆúÆ® Ÿ°ÙÀÌ ¾ø°í ¾î¶² °Íµµ ¸í·ÉÇà¿¡¼­ ÁÖ¾îÁöÁö ¾Ê¾Ò´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ÀÌµé °æ¿ì¿¡ GNU make ´Â ¾Æ¹«°Íµµ ÇÏÁö ¾Ê´Â´Ù.
`Makefile `xxx' was not found.'
`Included makefile `xxx' was not found.'
¸í·ÉÇà¿¡¼­ ÁÖ¾îÁø makefile (ù¹ø° ÇüÅÂ) ¶Ç´Â Æ÷ÇÔµÈ makefile (µÎ¹ø° ÇüÅÂ) °¡ ¾ø´Ù.
`warning: overriding commands for target `xxx''
`warning: ignoring old commands for target `xxx''
GNU make ´Â Ÿ°Ù Çϳª¿¡ ´ëÇؼ­ ´Ü Çѹø¸¸ ¸í·ÉµéÀÌ ÁöÁ¤µÇ´Â °ÍÀ» Çã¶ôÇÑ´Ù(´õºí-ÄÝ·Ð ±ÔÄ¢µéÀ» Á¦¿ÜÇÏ°í). ÀÌ¹Ì ¸í·ÉµéÀ» °¡Áöµµ·Ï Á¤ÀÇµÈ Å¸°Ù¿¡ ´ëÇؼ­ ¸í·ÉµéÀ» ´Ù½Ã ÁÖ¸é ÀÌ °æ°í°¡ ¹ßÇàµÇ°í µÎ¹ø° ¸í·ÉµéÀº ù¹ø° °ÍÀ» ¿À¹ö¶óÀ̵åÇÒ °ÍÀÌ´Ù.
`Circular xxx <- yyy dependency dropped.'
make °¡ Á¾¼Ó¼º ±×·¡ÇÁ¿¡¼­ ·çÇÁ¸¦ ¹ß°ßÇß´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù: Ÿ°Ù xxx ÀÇ Á¾¼Ó¹° yyy, ±×¸®°í ÀÌ°ÍÀÇ Á¾¼Ó¹°µé µîµî À» ÃßÀûÇÑ ÈÄ ±×µéÁß Çϳª°¡ xxx ¿¡ ´Ù½Ã Á¾¼ÓÇÑ´Ù´Â ÀǹÌÀÌ´Ù.
`Recursive variable `xxx' references itself (eventually). Stop.'
ÀÌ°ÍÀº È®ÀåµÉ ¶§ ÀÚ±âÀÚ½Å(xxx)À» ÂüÁ¶ÇÒ ÀÏ¹Ý (Àç±ÍÀûÀÎ) make º¯¼ö xxx ¸¦ Á¤ÀÇÇß´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ÀÌ°ÍÀº Çã¿ëµÇÁö ¾Ê´Â´Ù; ´Ü¼ø-È®Àå º¯¼ö (:=) ¸¦ »ç¿ëÇϵçÁö ¾Æ´Ï¸é Ãß°¡ ¿¬»êÀÚ (+=) ¸¦ »ç¿ëÇÏÀÚ.
`Unterminated variable reference. Stop.'
ÀÌ°ÍÀº, º¯¼ö³ª ÇÔ¼ö ÂüÁ¶¿¡¼­ ÀûÀýÇÏ°Ô ´Ý´Â °ýÈ£³ª Áß°ýÈ£¸¦ Á¦°øÇÏ´Â °ÍÀ» Àؾú´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.
`insufficient arguments to function `xxx'. Stop.'
ÀÌ°ÍÀº ÀÌ ÇÔ¼ö¿¡ ´ëÇؼ­ ÇÊ¿äÇÑ °³¼öÀÇ ¸Å°³º¯¼öµéÀ» Á¦°øÇÏÁö ¾Ê¾Ò´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ¸Å°³º¯¼öµéÀÇ ¼³¸í¿¡ ´ëÇؼ­´Â ±× ÇÔ¼öÀÇ ¹®¼­¸¦ º¸ÀÚ.
`missing target pattern. Stop.'
`multiple target patterns. Stop.'
`target pattern contains no `%'. Stop.'
À̵éÀº À߸øµÈ Á¤Àû ÆÐÅÏ ±ÔÄ¢µé¿¡ ´ëÇؼ­ »ý¼ºµÈ´Ù. ù¹ø°´Â ±ÔÄ¢ÀÇ Å¸°Ù ¼½¼Ç¿¡ ¾î¶² ÆÐÅϵµ ¾ø´Ù´Â °ÍÀ» ÀǹÌÇÏ°í, µÎ¹ø°´Â Ÿ°Ù ¼½¼Ç¿¡ ´Ù¼öÀÇ ÆÐÅϵéÀÌ ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇϸç, ¼¼¹ø°´Â Ÿ°ÙÀÌ ÆÐÅÏ ¹®ÀÚ (%) ¸¦ ´ã°í ÀÖÁö ¾Ê´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.


Go to the first, previous, next, last section, table of contents.