Next: Makefile Conventions, Up: Managing Releases [Contents]
³ÆGNUÇÛÉÛʪ¤Ïconfigure
¤È¤¤¤¦Ì¾Á°¤Î¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤È°ì½ï¤ËÇÛ¤é
¤ì¤ë¤Ù¤¤À¡£¤³¤Î¥¹¥¯¥ê¥×¥È¤Ë¤Ï¤½¤Î¥×¥í¥°¥é¥à¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤¿¤¤¥Þ¥·¥ó¤ä¥·¥¹
¥Æ¥à¤Î¼ïÎà¤òɽ¤¹°ú¿ô¤òÍ¿¤¨¤é¤ì¤ë¡£
configure
¥¹¥¯¥ê¥×¥È¤Ï¥³¥ó¥Ñ¥¤¥ë¤Ë¸ú²Ì¤òÍ¿¤¨¤é¤ì¤ë¤è¤¦¤ËÀßÄꥪ¥×¥·¥ç
¥ó¤òµÏ¿¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
¤³¤ì¤ò¹Ô¤¦°ì¤Ä¤ÎÊýË¡¤Ï¡¢config.h¤Î¤è¤¦¤Êɸ½àŪ¤Ê̾Á°¤«¤é¡¢Áª¤ó¤À ¥·¥¹¥Æ¥àÍѤÎŬÀÚ¤ÊÀßÄê¥Õ¥¡¥¤¥ë¤Ë¥ê¥ó¥¯¤¹¤ë¤³¤È¤À¡£¤³¤ì¤Ë¤è¤Ã¤Æ¡¢¿Í¡¹¤Ï¤Þ ¤ºÀßÄꤷ¤Ê¤¤¤È¥×¥í¥°¥é¥à¤ò¹½ÃۤǤ¤Ê¤¯¤Ê¤ë¤À¤í¤¦¡£
configure
¤¬ÀßÄê¤Ç¤¤ë¾¤ÎÊýË¡¤ÏMakefile¤òÊÔ½¸¤¹¤ë¤³¤È¤À¡£¤³¤¦¤¹¤ë
¤Ê¤é¡¢ÇÛÉÛʪ¤ÏMakefile¤È̾ÉÕ¤±¤é¤¿¥Õ¥¡¥¤¥ë¤ò´Þ¤à¤Ù¤¤Ç¤Ï¤Ê¤¤¡£
Âå¤ï¤ê¤Ë¡¢ÊÔ½¸¤Ë»È¤ï¤ì¤ëÆþÎϤò´Þ¤àMakefile.in¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤òÆþ¤ì
¤ë¤Ù¤¤À¡£¤Þ¤¿¤â¤¦°ìÅÙ¡¢¤³¤ì¤Ï¤Þ¤ºÀßÄê¤ò¤·¤Æ¤Ê¤¤¤È¥×¥í¥°¥é¥à¤ò¹½ÃۤǤ¤Ê
¤¤¤è¤¦¤Ë¤Ê¤ë¤è¤¦¤Ë¤¹¤ë¡£
¤â¤·configure
¤¬Makefile¤Ë½ñ¤¹þ¤à¤Ê¤é¡¢Makefile¤Ï¡¢
configure
¤¬ºÆ¤ÓÁö¤ê¡¢ºÇ¸å¤Ë¹Ô¤Ã¤¿¤Î¤ÈƱ¤¸ÀßÄê¤òºî¤ê¾å¤²¤ë¡¢
Makefile¤È̾ÉÕ¤±¤é¤ì¤¿¥¿¡¼¥²¥Ã¥È¤ò»ý¤Ä¤Ù¤¤À¡£configure
¤¬
ÆÉ¤à¥Õ¥¡¥¤¥ë¤ÏMakefile¤Î°Í¸´Ø·¸¤È¤·¤ÆÎóµó¤µ¤ì¤Æ¤¤¤ë¤Ù¤¤À¡£
configure
¥¹¥¯¥ê¥×¥È¤«¤é¤Î½ÐÎϤǤ¢¤ë¥Õ¥¡¥¤¥ë¤Ï¤¹¤Ù¤Æ¡¢¤½¤ì¤é¤¬
configure
¤ò»È¤Ã¤Æ¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤¿¤³¤È¤òÀâÌÀ¤¹¤ë¥³¥á¥ó¥È¤òÀèÆ¬¤Ë
»ý¤Ã¤Æ¤¤¤ë¤Ù¤¤À¡£¤³¤ì¤Ë¤è¤Ã¤Æ¡¢¥æ¡¼¥¶¤Ï¤½¤ì¤é¤ò¼êư¤ÇÊÔ½¸¤·¤è¤¦¤È¹Í¤¨¤Ê
¤¯¤Ê¤ë¤À¤í¤¦¡£
configure
¥¹¥¯¥ê¥×¥È¤Ï¡¢¥×¥í¥°¥é¥à¤¬ºÇ¸å¤ËÀßÄꤵ¤ì¤¿¤È¤¤Ë»ØÄꤵ¤ì
¤¿ÀßÄꥪ¥×¥·¥ç¥ó¤òµ½Ò¤¹¤ë¡¢config.status¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ò½ñ
¤¯¤Ù¤¤Ç¤¢¤ë¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¤â¤·Áö¤ë¤ÈƱ¤¸ÀßÄê¤òºÆÀ¸À®¤¹¤ë¥·¥§¥ë¡¦¥¹¥¯
¥ê¥×¥È¤Ç¤¢¤ë¤Ù¤¤À¡£
configure
¥¹¥¯¥ê¥×¥È¤Ï¡¢(¤â¤·¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ê¤±¤ì¤Ð)¥½¡¼
¥¹¤¬¸«ÉÕ¤«¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ë¤¿¤á¤Î‘--srcdir=dirname’¤È
¤¤¤¦·Á¼°¤Ë¥ª¥×¥·¥ç¥ó¤ò¼õ¤±¼è¤ë¤Ù¤¤À¡£¤³¤¦¤¹¤ë¤È¡¢¥×¥í¥°¥é¥à¤òÊ̥ǥ£¥ì¥¯
¥È¥ê¤Ç¹½ÃÛ¤¹¤ë¤³¤È¤¬²Äǽ¤Ê¤ê¡¢¼ÂºÝ¤Î¥½¡¼¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ÏÊѹ¹¤µ¤ì¤Ê¤¤¤è
¤¦¤Ë¤Ç¤¤ë¡£
¤â¤·¥æ¡¼¥¶¤¬‘--srcdir’¤ò»ØÄꤷ¤Ê¤±¤ì¤Ð¡¢configure
¤Ï¥½¡¼¥¹¤¬
¸«ÉÕ¤«¤ë¤«¤É¤¦¤«¸«¤ë¤Î¤Ë¡¢.¤È..¤ÎξÊý¤ò³Îǧ¤¹¤ë¤Ù¤¤À¡£¤â
¤·¤³¤ì¤é¤Î¾ì½ê¤Î°ì¤Ä¤Ç¥½¡¼¥¹¤¬¸«ÉÕ¤«¤Ã¤¿¤é¡¢¤½¤³¤«¤é¥½¡¼¥¹¤ò»È¤¦¤Ù¤¤À¡£
¤½¤¦¤Ç¤Ê¤±¤ì¤Ð¡¢¥½¡¼¥¹¤¬¸«ÉÕ¤±¤é¤ì¤Ê¤¤¤ÈÊó¹ð¤·¡¢¥¼¥í¤Ç¤Ê¤¤¾õÂ֤ǽªÎ»¤¹¤ë
¤Ù¤¤À¡£
ÉáÄÌ‘--srcdir’¤ò¥µ¥Ý¡¼¥È¤¹¤ë´Êñ¤ÊÊýË¡¤ÏMakefile¤ÎVPATH
¤ÎÄê
µÁ¤òÊÔ½¸¤¹¤ë¤³¤È¤Ë¤è¤ë¡£¤³¤ì¤ò²Äǽ¤Ë¤¹¤ë¤¿¤á¤Ë¡¢configure
¤Ï
Makefile¤ËÀµ³Î¤Ë»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤ÎÃͤò»ý¤Äsrcdir
¤È¤¤¤¦Ì¾
Á°¤ÎÊÑ¿ô¤ò²Ã¤¨¤ë¤³¤È¤¬¤Ç¤¤ë¡£
configure
¥¹¥¯¥ê¥×¥È¤Ï¤Þ¤¿¤½¤Î¥×¥í¥°¥é¥à¤ò¹½ÃÛ¤¹¤ë¥·¥¹¥Æ¥à¤Î¼ïÎà¤ò
»ØÄꤹ¤ë°ú¿ô¤ò¼õ¤±¼è¤ë¤Ù¤¤Ç¤¢¤ë¡£¤³¤Î°ú¿ô¤Ï¼¡¤Î¤è¤¦¤Ç¤¢¤ë¤Ù¤¤À¡£
cpu-company-system
Î㤨¤Ð¡¢Sun 3¤Ï‘m68k-sun-sunos4.1’¤À¡£
configure
¥¹¥¯¥ê¥×¥È¤Ï¡¢¥Þ¥·¥ó¤òɽ¤¹ÊýË¡¤È¤·¤Æ¡¢Á´¤Æ¤Î¤â¤Ã¤È¤â¤é¤·
¤¤Â¾¤ÎÊýË¡¤ò²òÆÉ¤Ç¤¤ëɬÍפ¬¤¢¤ë¡£¤À¤«¤é¡¢‘sun3-sunos4.1’¤ÏÀµ¤·¤¤ÊÌ
̾¤À¤í¤¦¡£Â¿¤¯¤Î¥×¥í¥°¥é¥à¤Ç¤Ï¡¢‘vax-dec-ultrix’¤Ï
‘vax-dec-bsd’¤ÎÊÌ̾¤À¤í¤¦¡£Ã±¤ËUltrix¤ÈBSD¤Î°ã¤¤¤Ï¤Û¤È¤ó¤Éµ¤ÉÕ
¤«¤Ê¤¤ÄøÅÙ¤À¤«¤é¤À¤¬¡¢¾¯¿ô¤Î¥×¥í¥°¥é¥à¤Ï¤½¤ì¤é¤ò¶èÊ̤¹¤ëɬÍפ¬¤¢¤ë¤«¤â¤·
¤ì¤Ê¤¤¡£
¥µ¥Ö¥ë¡¼¥Á¥ó¤È¤·¤Æ»È¤¨¤ë¡¢¥·¥¹¥Æ¥à¤Î¼ïÎà¤ò͸ú¤Ë¤·ÊÌ̾¤òÀµµ¬²½¤¹¤ë¡¢ config.sub¤È¸Æ¤Ð¤ì¤ë¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤¬¤¢¤ë¡£
¾¤Î¥ª¥×¥·¥ç¥ó¤Ç¡¢¤½¤Î¥Þ¥·¥ó¤Ë¤¢¤ë¥½¥Õ¥È¥¦¥§¥¢¤ä¥Ï¡¼¥É¥¦¥§¥¢¤ò¤â¤Ã¤È¾ÜºÙ ¤Ë»ØÄꤷ¤ÆÎɤ¤¤·¡¢¥Ñ¥Ã¥±¡¼¥¸¤ÎÉÕ²ÃŪ¤ÊÉôʬ¤òÆþ¤ì¤¿¤ê¡¢³°¤·¤¿¤ê¤·¤ÆÎɤ¤¡£
feature¤È¸Æ¤Ð¤ì¤ëÉÕ²ÃŪ¤Ê¥æ¡¼¥¶¿å½à¤Îµ¡Ç½¤ò¹½ÃÛ¤·¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë ¤è¤¦¡¢¥Ñ¥Ã¥±¡¼¥¸¤òÀßÄꤹ¤ë¡£¤³¤ì¤Ç¡¢¥æ¡¼¥¶¤Ï¤É¤ÎÉÕ²ÃŪ¤Êµ¡Ç½¤òÆþ¤ì¤ë¤«Áª Âò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£ÉÕ²ÃŪ¤Êparameter¤Ë‘no’¤òÍ¿¤¨¤ì¤Ð¡¢¤â¤·¥Ç ¥Õ¥©¥ë¥È¤Ç¤Ï¹½ÃÛ¤µ¤ì¤ë¤Ê¤é¡¢feature¤ò½ü¤¯¤Ù¤¤À¡£
¤É¤Î‘--enable’¥ª¥×¥·¥ç¥ó¤â·è¤·¤Æ¤¢¤ëµ¡Ç½¤ò¾¤ÈÃÖ¤´¹¤¨¤ë¤Ù ¤¤Ç¤Ï¤Ê¤¤¡£¤É¤Î‘--enable’¥ª¥×¥·¥ç¥ó¤â·è¤·¤Æ¤¢¤ëÍÍÑ¤ÊµóÆ°¤ò¾¤ÎÍ ÍÑ¤ÊµóÆ°¤ÎÂå¤ï¤ê¤Ë¤¹¤ë¤Ù¤¤Ç¤Ï¤Ê¤¤¡£‘--enable’¤ÎÍ£°ì¤ÎŬÀڤʻÈÍÑ¤Ï ¤½¤Î¥×¥í¥°¥é¥à¤Î°ìÉô¤ò¹½ÃÛ¤¹¤ë¤«½ü¤¯¤«¤Î¼ÁÌä¤ËÂФ·¤Æ¤À¤±¤À¡£
¥Ñ¥Ã¥±¡¼¥¸package¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¤À¤í¤¦¤«¤é¡¢¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬ package¤È°ì½ï¤ËƯ¤¯¤è¤¦¤ËÀßÄꤹ¤ë¡£
package¤Î²Äǽ¤ÊÃͤˤϡ¢‘gnu-as’(¤¢¤ë¤¤¤Ï‘gas’)¡¢ ‘gnu-ld’¡¢‘gnu-libc’¡¢‘gdb’¡¢‘x’¡¢¤½¤·¤Æ¡¢ ‘x-toolkit’¤¬¤¢¤ë¡£
‘--with’¥ª¥×¥·¥ç¥ó¤ò¤¢¤ë¥Õ¥¡¥¤¥ë¤ò¸«ÉÕ¤±¤ë¤¿¤á¤Ë¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤹ ¤ë¤Î¤Ë»È¤Ã¤Æ¤Ï¤¤¤±¤Ê¤¤¡£¤³¤¦¤¤¤¦»È¤¤Êý¤Ï‘--with’¥ª¥×¥·¥ç¥ó¤ÎÌÜŪ¤« ¤é³°¤ì¤Æ¤¤¤ë¡£
¥¿¡¼¥²¥Ã¥È¡¦¥Þ¥·¥ó¤ÏÉâÆ°¾®¿ôÅÀ¥×¥í¥»¥Ã¥µ¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¡£
¥¿¡¼¥²¥Ã¥È¡¦¥Þ¥·¥ó¤Î¥¢¥»¥ó¥Ö¥é¤ÏGAS¡¢¤Ä¤Þ¤ê¡¢GNU¥¢¥»¥ó¥Ö¥é¤Ç¤¢¤ë¡£¤³¤ì¤Ï ¤â¤Ï¤ä»È¤ï¤ì¤Æ¤¤¤Ê¤¤¡£¥æ¡¼¥¶¤ÏÂå¤ï¤ê¤Ë‘--with-gnu-as’¤ò»È¤¦¤Ù¤¤À¡£
¥¿¡¼¥²¥Ã¥È¡¦¥Þ¥·¥ó¤ÏX Window System¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤¤¤ë¡£¤³¤ì¤Ï¤â¤Ï¤ä »È¤ï¤ì¤Æ¤¤¤Ê¤¤¡£¥æ¡¼¥¶¤ÏÂå¤ï¤ê¤Ë‘--with-x’¤ò»È¤¦¤Ù¤¤À¡£
Á´¤Æ¤Îconfigure
¥¹¥¯¥ê¥×¥È¤Ï¤³¤ì¤é¤Î“¾ÜºÙ¤Ê”¥ª¥×¥·¥ç¥ó¤ò¤¹¤Ù¤Æ¼õ
¤±Æþ¤ì¤ë¤Ù¤¤À¡£¤½¤ì¤é¤¬¼ê¤â¤È¤ÎÆÃÄê¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë°ã¤¤¤òºî¤ë¤«¤É¤¦¤«¤Ë¤«
¤«¤ï¤é¤º¡£ÆÃ¤Ë¡¢¤½¤ì¤é¤Ï‘--with-’¤ä‘--enable-’¤Ç»Ï¤Þ¤ë¤É¤ó¤Ê¥ª
¥×¥·¥ç¥ó¤Ç¤â¼õ¤±Æþ¤ì¤ë¤Ù¤¤À¡£¤³¤ì¤Ï¥æ¡¼¥¶¤¬¥ª¥×¥·¥ç¥ó°ìÁȤǰìÅÙ¤ËGNU¥½¡¼
¥¹¡¦¥Ä¥ê¡¼Á´ÂΤòÀßÄê¤Ç¤¤ë¤¹¤ë¤¿¤á¤À¡£
‘--with-’¤ä‘--enable-’¤ÎÉôÎब¶¹¤¤¤³¤È¤Ëµ¤ÉÕ¤¯¤À¤í¤¦¡£¤½¤ì¤é¤Ï ¤¢¤Ê¤¿¤¬¹Í¤¨¤ë¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤ÎÎत¤ËÌòÌܤò²Ì¤¿¤µ¤Ê¤¤¡£¤³¤Î¤³ ¤È¤Ï·×²èŪ¤Ê¤Î¤À¡£²æ¡¹¤ÏGNU¥½¥Õ¥È¥¦¥§¥¢¤Ç²Äǽ¤ÊÀßÄꥪ¥×¥·¥ç¥ó¤òÀ©¸Â¤·¤¿ ¤¤¤Î¤À¡£²æ¡¹¤ÏGNU¥×¥í¥°¥é¥à¤ËÆÃ°Û¤ÊÀßÄꥪ¥×¥·¥ç¥ó¤ò»ý¤¿¤»¤¿¤¯¤Ê¤¤¡£
¥³¥ó¥Ñ¥¤¥ë¤Î²áÄø¤Î°ìÉô¤ò¹Ô¤¦¥Ñ¥Ã¥±¡¼¥¸¤Ï¥¯¥í¥¹¡¦¥³¥ó¥Ñ¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤¹¤ë
¤«¤â¤·¤ì¤Ê¤¤¡£¤½¤¦¤¤¤¦¾ì¹ç¡¢¤½¤Î¥×¥í¥°¥é¥à¤Î¥Û¥¹¥È¤È¥¿¡¼¥²¥Ã¥È¤Î¥Þ¥·¥ó¤Ï
°Û¤Ê¤ë¤«¤â¤·¤ì¤Ê¤¤¡£configure
¥¹¥¯¥ê¥×¥È¤ÏÄÌ¾ï»ØÄꤵ¤ì¤¿¥·¥¹¥Æ¥à¤Î
¼ïÎब¥Û¥¹¥È¤È¥¿¡¼¥²¥Ã¥È¤ÎξÊý¤À¤È¤·¤Æ°·¤¦¤Ù¤¤À¡£¤³¤¦¤·¤Æ¡¢¤½¤ì¤¬Áö¤ë¤Î
¤ÈƱ¤¸¼ïÎà¤Î¥Þ¥·¥ó¤Çư¤¯¥×¥í¥°¥é¥à¤òºî¤ê½Ð¤¹¡£
¥¯¥í¥¹¡¦¥³¥ó¥Ñ¥¤¥é¡¢¥¯¥í¥¹¡¦¥¢¥»¥ó¥Ö¥é¡¢¤¢¤ë¤¤¤Ï¤¢¤Ê¤¿¤¬»ý¤Ä¤É¤ó¤Ê¤â¤Î¤Ç
¤â¡¢¹½ÃÛ¤¹¤ëÊýË¡¤Ï¡¢configure
¤òÁö¤é¤»¤ë¤È¤¤Ë
‘--host=hosttype’¤È¤¤¤¦¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¡£¤³¤ì¤Ï¥¿¡¼¥²¥Ã
¥È¡¦¥·¥¹¥Æ¥à¤Î¼ïÎà¤òÊѤ¨¤Ê¤¤¤Ç¥Û¥¹¥È¡¦¥·¥¹¥Æ¥à¤ò»ØÄꤹ¤ë¡£hosttype
¤Îʸˡ¤Ï¾å¤Ç½Ò¤Ù¤¿¤Î¤ÈƱ¤¸¤Ç¤¢¤ë6¡£
¥¯¥í¥¹¡¦¥³¥ó¥Ñ¥¤¥é¤ò³«»Ï¤¹¤ë¤Ë¤Ï¡¢¤½¤ì¤¬Áö¤ë¥Û¥¹¥È°Ê³°¤Î¥Þ¥·¥ó¤Ç¥³¥ó¥Ñ¥¤ ¥ë¤¹¤ë¤³¤È¤¬É¬ÍפǤ¢¤ë¡£¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢¤¢¤Ê¤¿¤¬¤½¤ì¤é¤ò¥³ ¥ó¥Ñ¥¤¥ë¤¹¤ë¥·¥¹¥Æ¥à¤¬¥Û¥¹¥È¤È¤Ï°Û¤Ê¤ë¾ì¹ç¡¢ÀßÄê¤ò»ØÄꤹ¤ë¤¿¤á¤Ë¡¢ ‘--build=hosttype’¤È¤¤¤¦ÀßÄꥪ¥×¥·¥ç¥ó¤ò¼õ¤±¼è¤ë7¡£
¥¯¥í¥¹ºî¶È¤Ï°ÕÌ£¤¬¤Ê¤¤¥×¥í¥°¥é¥à¤Ï¡¢‘--host’¥ª¥×¥·¥ç¥ó¤ò¼õ¤±¼è¤ëɬ ÍפϤʤ¤¡£¤Ê¤¼¤Ê¤é¡¢¥¯¥í¥¹ºî¶È¤Î¤¿¤á¤Ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥àÁ´ÂΤòÀß Äꤹ¤ë¤³¤È¤Ï°ÕÌ£¤Î¤¢¤ë¤³¤È¤Ç¤Ï¤Ê¤¤¤«¤é¤À¡£
¥×¥í¥°¥é¥à¤ÎÃæ¤Ë¤Ï¼«Æ°Åª¤Ë¼«Ê¬¼«¿È¤òÀßÄꤹ¤ëÊýË¡¤ò»ý¤Ã¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ë¡£
¤¢¤Ê¤¿¤Î¥×¥í¥°¥é¥à¤¬¤³¤¦¤¹¤ë¤è¤¦¤Ëºî¤é¤ì¤Æ¤¤¤ë¤È¡¢¤¢¤Ê¤¿¤Î
configure
¥¹¥¯¥ê¥×¥È¤Ï¤½¤Î°ú¿ô¤Î¤Û¤È¤ó¤É¤ò̵»ë¤·¤ÆÎɤ¤¡£