Next: , Previous: Copying, Up: Top   [Contents][Index]


1 ¥¤¥ó¥¹¥È¡¼¥ë

¥Ó¥ë¥É¤È¥¤¥ó¥¹¥È¡¼¥ë¤ÎÀâÌÀ¤Î¾ÜºÙ¤Ï¡¤¥Õ¥¡¥¤¥ëINSTALL¤ò»²¾È¤·¤Æ¤¯ ¤À¤µ¤¤¡¥¥½¡¼¥¹¥³¡¼¥É¤¬Éտ路¤Æ¤¤¤ëLinux¥½¥Õ¥È¥¦¥§¥¢¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤á ¤Ë¤È¤ê¤¢¤¨¤º»ÈÍѤ·¤¿¤¤¾ì¹ç¡¤°Ê²¼¤Î°ìÈÌŪ¤Ê¼ê½ç¤Ë½¾¤Ã¤Æ²¼¤µ¤¤¡¥¤Ä¤Þ¤ê¡¤ ŬÅö¤Ê¥Ç¥£¥ì¥¯¥È¥ê¤Ç¥À¥¦¥ó¥í¡¼¥É¤·¤¿¥Õ¥¡¥¤¥ë¤òŸ³«(untar)¤·¡¤°Ê²¼¤ò¼Â¹Ô ¤·¤Þ¤¹¡¥

cd <source code main directory>
./configure
make
make install

Ãí°Õ¡§configure¤Î--prefix¥ª¥×¥·¥ç¥ó¤Ç¡¤Ê̤Υ¤¥ó¥¹¥È¡¼ ¥ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¸Â¤ê(Î㤨¤Ð¡¤./configure --prefix=<your home>)¡¤¥ë¡¼¥È¤Çmake install¤ò¼Â¹Ô¤¹¤ëɬÍפ¬¤¢¤ê ¤Þ¤¹¡¥

¥Õ¥¡¥¤¥ë¤Ï¡¤°Ê²¼¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡¥

¼Â¹Ô·Á¼°

/prefix/bin

¥É¥­¥å¥á¥ó¥È

/prefix/share/doc/gengetopt

Îã

/prefix/share/doc/gengetopt/examples

Äɲåե¡¥¤¥ë

/prefix/share/gengetopt

prefix¤Î¥Ç¥Õ¥©¥ë¥È¤Ï/usr/local¤Ç¤¹¤¬¡¤configure ¤Î--prefix¥ª¥×¥·¥ç¥ó¤ÇÊѹ¹¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡¥

1.1 ¥À¥¦¥ó¥í¡¼¥É

GNU¤ÎFTP¥µ¥¤¥Èftp://ftp.gnu.org/gnu/gengetopt¤ä¡¤¤½¤Î¥ß¥é¡¼¤Î°ì ¤Ä(http://www.gnu.org/prep/ftp.html¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¤«¤é¥À¥¦¥ó ¥í¡¼¥É¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥

WindowsÍѤΥХ¤¥Ê¥ê¤Ï¡¤¤â¤Ï¤äÇÛÉÕ¤·¤Æ¤¤¤Þ¤»¤ó¡¥¤½¤ÎÍýͳ¤Ï¡¤ http://www.cygwin.com¤ÇÍøÍѲÄǽ¤ÊCygnus C/C++ ¥³¥ó¥Ñ¥¤¥é¤ò»ÈÍѤ¹ ¤ë¤³¤È¤Ç´Êñ¤Ë¥Ó¥ë¥É¤¹¤ë¤³¤È¤¬²Äǽ¤À¤«¤é¤Ç¤¹¡¥¤·¤«¤·¡¤¤½¤Î¤è¤¦¤Ê¥³¥ó¥Ñ ¥¤¥é¤Î¥À¥¦¥ó¥í¡¼¥É¤¬¼«Í³¤Ë¤Ç¤­¤Ê¤¤¾ì¹ç¡¤¥Ð¥¤¥Ê¥ê¤òľÀÜÍ׵᤹¤ë¤³¤È¤¬²Ä ǽ¤Ç¡¤ÅŻҥ᡼¥ë(¥Û¡¼¥à¥Ú¡¼¥¸¤Ç¥á¡¼¥ë¥¢¥É¥ì¥¹¤òõ¤·¤Æ²¼¤µ¤¤)¤òÁ÷¤Ã¤Æ¤â ¤é¤¨¤ì¤Ð¤½¤ì¤é¤òÁ÷ÉÕ¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥

»ä(Lorenzo Bettini)¤ÎÅŻҽð̾¤Ï¡¤GNU gpg (http://www.gnupg.org) ¤Ç¤Ê¤µ¤ì¤Æ¤¤¤Æ¡¤GPG¤Î¸ø³«¸°¤Ï¥Û¡¼¥à¥Ú¡¼¥¸(http://www.lorenzobettini.it)¤Ç¸«¤Ä¤«¤ë ¤Ï¤º¤Ç¤¹¡¥

ÆÃÄê¤Î¥ê¥ê¡¼¥¹¤¬ÍøÍѲÄǽ¤Ç¤¢¤ì¤Ð¡¤¥Ñ¥Ã¥Á¤ÎÆþ¼ê¤â²Äǽ¤Ç¤¹(°ÊÁ°¤Î¥Ð¡¼¥¸¥ç ¥ó¤«¤é¤Î¥Ñ¥Ã¥Á¤Ï°Ê²¼¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡¥

1.2 ƿ̾¤Ç¤ÎCVS¥¢¥¯¥»¥¹

¤³¤Î¥×¥í¥¸¥§¥¯¥È¤ÎCVS¥ê¥Ý¥¸¥È¥ê¤Ï¡¤°Ê²¼¤Î¼ê½ç¤Çƿ̾(pserver)CVS¤«¤é¼è¤ê ½Ð¤¹¤³¤È¤¬²Äǽ¤Ç¤¹¡¥anoncvs¤Î¥Ñ¥¹¥ï¡¼¥ÉÆþÎϤΥץí¥ó¥×¥È¤Ç¤Ï¡¤Ã±½ã¤Ë Enter¥­¡¼¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤¡¥

cvs -d:pserver:anoncvs@subversions.gnu.org:/cvsroot/gengetopt login

cvs -z3 -d:pserver:anoncvs@subversions.gnu.org:/cvsroot/gengetopt \
  co gengetopt

¤½¤ì°Ê¾å¤Î¼ê½ç¤Ï¡¤°Ê²¼¤Î¥¢¥É¥ì¥¹¤Ç¸«¤Ä¤«¤ë¤Ï¤º¤Ç¤¹¡¥

http://savannah.gnu.org/projects/gengetopt.

¤³¤ÎÊýË¡¤Ï¡¤gengetopt¤ÎºÇ¿·¤Î³«È¯¥Ð¡¼¥¸¥ç¥ó¤òÆþ¼ê¤¹¤ëÊýË¡¤Ç¡¤ÉÔ°ÂÄê¤Î²Ä ǽÀ­¤¬¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡¥¤³¤Î¼êË¡¤Ï¡¤¤³¤Î¥×¥í¥°¥é¥à¤ò½¤À°¤·¤¿ ¤ê³ÈÄ¥¤·¤¿¤ê¤¹¤ë¤³¤È¤¬ÌÜŪ¤Î¾ì¹ç¤ÏºÇŬ¤Ç¤¹¡¥ºÇ¿·¤Îcvs¥ê¥Ý¥¸¥È¥ê¥½¡¼¥¹¤Ø ¤Î¥Ñ¥Ã¥Á¤òÁ÷¤Ã¤¿¤Û¤¦¤¬Îɤ¤¤Ç¤·¤ç¤¦¡¥

È¿ÂФˡ¤³ºÅö¤¹¤ë¥ê¥ê¡¼¥¹¤Î¥½¡¼¥¹¤òÆþ¼ê¤·¤¿¤¤¾ì¹ç¡¤Î㤨¤Ð¥Ð¡¼¥¸¥ç¥ó X.Y.Z¤Ç¤Ï¡¤cvs¥³¥Þ¥ó¥É¤äcvs update¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¡¤¥¿¥° rel_X_Y_Z¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡¥

cvs¥ê¥Ý¥¸¥È¥ê¤«¤éÆþ¼ê¤·¤¿¥½¡¼¥¹¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¤­¡¤configure¤È make¥³¥Þ¥ó¥É¤ÎÁ°¤Ë¡¤¾¯¤Ê¤¯¤È¤â°ìÅÙ¡¤°Ê²¼¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¯¤À ¤µ¤¤¡¥

sh reconf

¤³¤ì¤Ç¡¤autotools¥³¥Þ¥ó¥É¤òÀµ¤·¤¤½ç½ø¤Ç¼Â¹Ô¤·¡¤Â­¤ê¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ë¥Õ¥¡ ¥¤¥ë¤â¥³¥Ô¡¼¤·¤Þ¤¹¡¥¤³¤ì¤òÀ®¸ù¤µ¤»¤ë¤¿¤á¡¤ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Î automake¤Èautoconf¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤Ù¤­¤Ç¤¹¡¥¤Þ¤¿¡¤ flex¤Èbison¤âɬÍפǤ¹¡¥

Ãí°Õ¡§¤³¤Î´·½¬¤Ï¡¤¥ê¥ê¡¼¥¹2.14°Ê¹ß¤«¤é°Ý»ý¤µ¤ì¤Æ¤¤¤Þ¤¹¡¥

1.3 gengetopt¤Î¥Ó¥ë¥É¤ËɬÍפʤâ¤Î

gengetopt¤Ï¡¤GNU/Linux¤Ç¡¤gcc (C++)¡¤bison (yacc)¡¤¤½¤·¤Æflex (lex)¤ò»È ÍѤ·¤Æ³«È¯¤µ¤ì¡¤¤Þ¤¿http://www.cygwin.com¤ÇÍøÍѲÄǽ¤ÊCygnus C/C++¥³¥ó¥Ñ¥¤¥é¤Ë°Ü¿¢¤µ¤ì¤Þ¤·¤¿¡¥Í¥½¨¤ÊGNU Autoconf¤ÈGNU Automake¤ò»ÈÍÑ ¤·¤Æ¤¤¤Þ¤¹¡¥¤Þ¤¿¡¤Autotools (ftp://ftp.ugcs.caltech.edu/pub/elef/autotools)¤âÍøÍѤ·¤Æ¤ª¤ê¡¤ ¤½¤ì¤Ï(GNUɸ½à¤Ë½àµò¤·¤¿)¥½¡¼¥¹¥Ä¥ê¡¼¤Ç¤Îautoconf¤Èautomake¤òÍѤ¤¤¿¥¹¥¿¡¼ ¥È¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡¥

¤µ¤é¤Ë¡¤Gengen (http://www.lorenzobettini.it/software/gengen)¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¹½ ʸ²òÀϤòÀ¸À®¤¹¤ë¥³¡¼¥É¤Î¼«Æ°À¸À®¤Ç»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡¥

¼ÂºÝ¡¤À¸À®¤µ¤ì¤¿¥½¡¼¥¹¤òÄ󶡤·¤Æ¤¤¤ë¤Î¤Ç¡¤¥½¡¼¥¹¤Î½ÅÍ×Éôʬ¤ò³«È¯¤·¤¿¤¤ ¤ï¤±¤Ç¤Ï̵¤¤¤«¤®¤ê¡¤¥½¡¼¥¹¤Î½ÅÍ×Éôʬ¤ò¥Ó¥ë¥É¤¹¤ë¤¿¤á¤Ë¡¤¤³¤ì¤é¤Î¾åµ­¤Î ¤¹¤Ù¤Æ¤Î¥Ä¡¼¥ë¤¬É¬ÍפÀ¤È¤¤¤¦¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡¥

gengetopt¤ÇÀ¸À®¤µ¤ì¤ë¥³¡¼¥É¤Ï¡¤getopt_long´Ø¿ô¤Ë°Í¸¤·¡¤Ä̾綠¤ì ¤Ïɸ½à¤ÎC¥é¥¤¥Ö¥é¥ê¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡¥¤·¤«¤·¡¤¤½¤ì¤¬´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤C¥é¥¤ ¥Ö¥é¥ê¤Î¼ÂÁõ¤â¸ºß¤¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡¥¤³¤Î¾õ¶·¤Ç¤Ï¡¤¥×¥í¥°¥é¥à¤ò¥Õ¥¡ ¥¤¥ëgetopt.c¤Ègetopt1.c¤È¤È¤â¤Ëgengetopt¤ÇÀ¸À®¤µ¤ì¤¿¥Õ¥¡ ¥¤¥ë¤ò»ÈÍѤ·¤Æ¥×¥í¥°¥é¥à¤ò¥ê¥ó¥¯¤·¡¤¥×¥í¥¸¥§¥¯¥È¤Ëgnugetopt.h¤ò ´Þ¤á¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡¥²æ¡¹¤ÏÌÀ¼¨Åª¤Ë¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò¥æ¡¼¥Æ¥£¥ê¥Æ¥£¥Õ¥¡ ¥¤¥ë¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ÇÄ󶡤·¤Æ¤¤¤Þ¤¹(<install prefix>/share/gengetopt)¡¥¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ÏGNU C¥é¥¤¥Ö¥é¥ê¤Î°ìÉô¤Ç¤¹¡¥ getopt_long¤Îman¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡¥

getopt_long¤¬¥é¥¤¥Ö¥é¥ê¤Î°ìÉô¤«¤É¤¦¤«¤òÄ´ºº¤¹¤ëÊýË¡¤È¡¤Â­¤ê¤Ê¤¤ ¾ì¹ç¤Ë(autoconf¤Èautomake¤ò»ÈÍѤ·¤Æ)½èÍý¤¹¤ëÊýË¡¤Î¼ê½ç¤Ï¡¤No getopt_long¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡¥

1.4 °ÊÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤«¤é¤Î¥Ñ¥Ã¥Á

gengetopt-1.3-1.3.1-patch.gz (Î㤨¤Ð¡¤¥Ð¡¼¥¸¥ç¥ó1.3¤ò¥Ð¡¼¥¸¥ç¥ó 1.3.1¤ËÊѹ¹¤¹¤ë¥Ñ¥Ã¥Á)¤È¤¤¤Ã¤¿¥Ñ¥Ã¥Á¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤¿¾ì¹ç¡¤¥Ç¥£¥ì¥¯¥È ¥ê¤ò°ÊÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤Î¥½¡¼¥¹¥Ç¥£¥ì¥¯¥È¥ê(gengetopt-1.3)¤Ë°Üư¤·¡¤°Ê²¼¤ò ÆþÎϤ·¤Þ¤¹¡¥

gunzip -cd ../gengetopt-1.3-1.3.1.patch.gz | patch -p1 

¤½¤·¤Æ¡¤¥³¥ó¥Ñ¥¤¥ë½èÍý¤òºÆ¤Ó³«»Ï¤·¤Æ¤¯¤À¤µ¤¤(´û¤Ëconfigure¤ò ¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¡¤Ã±½ã¤Ëmake¤·¤Æ¤¯¤À¤µ¤¤)¡¥