Previous: LTLIBOBJ, Up: A Shared Library   [Contents][Index]


7.3.9 Libtool¤Î»ÈÍѤ˴ØÏ¢¤¹¤ë°ìÈÌŪ¤ÊÌäÂê

7.3.9.1 required file `./ltmain.sh' not found

libtool¤Ï¡¤¥Ñ¥Ã¥±¡¼¥¸¤Ëlibtool¤Î¥µ¥Ý¡¼¥È¤ò¹Ô¤Ê¤¦¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë ¤¹¤ëlibtoolize¤È¸Æ¤Ð¤ì¤ë¥Ä¡¼¥ë¤«¤éÀ¸¤¸¤Þ¤¹¡¥¤³¤Î¥³¥Þ¥ó¥É¤ò¼Â ¹Ô¤¹¤ë¤È¡¤ltmain.sh¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡¥aclocal¤È automake¤ÎÁ°¤Ë¤½¤ì¤ò¼Â¹Ô¤¹¤Ù¤­¤Ç¤¹¡¥

¸Å¤¤¥Ñ¥Ã¥±¡¼¥¸¤«¤é¿·¤·¤¤autotool¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤¹¤ë¤È¡¤¸Å¤¤¥Ð¡¼¥¸¥ç¥ó ¤ÎAutomake¤Ïlibtoolize¤È¸Æ¤Ð¤ì¤ë¤â¤Î¤ò»ÈÍѤ·¤Æ¤¤¤¿¤Î¤Ç¤³¤ÎÌä Âê¤ËľÌ̤·¤Þ¤¹¡¥¤³¤Î¤¿¤á¡¤¸Å¤¤¥Ó¥ë¥É¥¹¥¯¥ê¥×¥È¤Ç¤Ïlibtoolize ¤ò¸Æ¤Ó½Ð¤·¤Þ¤»¤ó¡¥

Automake1.6¤«¤é¡¤libtoolize¤Î¼Â¹Ô¤¬Automake¤Î»Å»ö¤Ç¤Ï¤Ê¤¤¤È ·èÄꤷ¤Þ¤·¤¿¡¥¤½¤ÎÂå¤ï¤ê¡¤¤½¤Îµ¡Ç½¤Ïautoreconf¥³¥Þ¥ó¥É¤ËÅϤµ ¤ì¤Þ¤·¤¿(see Using autoreconf in The Autoconf Manual)¡¥¤¤¤Ä²¿¤ò¼Â¹Ô¤¹¤ë¤Î¤«³Ð¤¨¤¿¤¯¤Ê¤¤¾ì¹ç¡¤ autoreconf¥³¥Þ¥ó¥É¤À¤±¤òÊÙ¶¯¤·¤Æ²¼¤µ¤¤¡¥´õ˾Ū¤Ë¤Ï¡¤´û¸¤Î bootstrap.sh¤äautogen.sh¥¹¥¯¥ê¥×¥È¤òautoreconf ¤Î¸Æ¤Ó½Ð¤·¤ËÃÖ´¹¤¹¤ë¤³¤È¤Ç¡¤¾­Íè¤Ë¤ª¤¤¤Æ¤âƱÍͤθߴ¹À­¤Î̵¤¤Êѹ¹¤«¤é¼« ͳ¤Ë¤Ê¤ì¤ë¤Ç¤·¤ç¤¦¡¥

7.3.9.2 libtool¤ÇºîÀ®¤µ¤ì¤¿¤ê¤µ¤ì¤Ê¤«¤Ã¤¿¤ê¤¹¤ë¥ª¥Ö¥¸¥§¥¯¥È

Ʊ¤¸¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤¬¡¤libtool¥é¥¤¥Ö¥é¥ê¤Î¥Ó¥ë¥É¤È¡¤libtool¤Ç¤Ï¤Ê¤¤Â¾¤Î ¥¿¡¼¥²¥Ã¥È(¥×¥í¥°¥é¥à¤À¤Ã¤¿¤ê¡¤Â¾¤Î¥é¥¤¥Ö¥é¥ê¤À¤Ã¤¿¤ê¤·¤Þ¤¹)¤ò¥Ó¥ë¥É¤¹ ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡¥

°Ê²¼¤ÎMakefile.am¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡¥

bin_PROGRAMS = prog
prog_SOURCES = prog.c foo.c …

lib_LTLIBRARIES = libfoo.la
libfoo_la_SOURCES = foo.c …

(¤³¤ÎÊ¿Ëޤʾõ¶·¤Ç¤Ï¡¤prog_SOURCES¤Ë¥ê¥¹¥È¥¢¥Ã¥×¤µ¤ì¤Æ¤¤¤ë foo.c¤ÎÂå¤ï¤ê¤Ë¡¤prog¤òÍѤ¤¤Ælibfoo.la¤ò¥ê¥ó¥¯¤¹ ¤ë¤³¤È¤òÈò¤±¤ë¤³¤È¤Ç¡¤ÌäÂê¤ò²óÈò¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥¤·¤«¤·¡¤¼ÂºÝ¤Ë¤Ï prog¤Èlibfoo.la¤ÏÊÌ¡¹¤ËÊÝ»ý¤·¤¿¤¤¤È²¾Äꤷ¤Þ¤¹¡¥)

µ»½ÑŪ¤Ë¤Ï¡¤²æ¡¹¤Ïprog¤ËÂФ·¤Æfoo.$(OBJEXT)¤ò¥Ó¥ë¥É¤·¡¤ libfoo.la¤ËÂФ·¤Æfoo.lo¤ò¥Ó¥ë¥É¤Ù¤­¤À¤È¤¤¤¦¤³¤È¤ò°ÕÌ£¤· ¤Þ¤¹¡¥ÌäÂê¤Ï¡¤foo.lo¤òºîÀ®¤¹¤ë²¾Äê¤Ç¡¤libtool¤¬ foo.$(OBJEXT)¤òºï½ü(¤Þ¤¿¤ÏÃÖ´¹)¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹ – ¤³¤ì¤ÏÈò¤±¤é¤ì¤Þ¤»¤ó¡¥

¤³¤Î¤¿¤á¡¤Automake¤¬¤³¤Î¾õ¶·¤ò¸¡½Ð¤¹¤ë¤È¡¤°Ê²¼¤Î¤è¤¦¤Ê¥á¥Ã¥»¡¼¥¸¤Çʸ¶ç ¤ò¸À¤¤¤Þ¤¹¡¥

object `foo.$(OBJEXT)' created both with libtool and without

¤³¤ÎÌäÂê¤ò²óÈò¤¹¤ëÊýË¡¤Ï¡¤¤³¤ì¤éÆó¤Ä¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ò³Î¼Â¤Ë°Û¤Ê¤ë¥Ù¡¼¥¹ ̾¤Ë¤¹¤ë¤³¤È¤Ç¤¹¡¥renamed objects¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¤¥¿¡¼¥²¥Ã ¥È¤´¤È¤Î¥Õ¥é¥°¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¤È¤­¡¤¤³¤ì¤Ï¼«Æ°Åª¤Ë¹Ô¤Ê¤ï¤ì¤Þ¤¹¡¥

bin_PROGRAMS = prog
prog_SOURCES = prog.c foo.c …
prog_CFLAGS = $(AM_CFLAGS)

lib_LTLIBRARIES = libfoo.la
libfoo_la_SOURCES = foo.c …

prog_CFLAGS = $(AM_CFLAGS)¤ÎÄɲäϡ¤prog_CFLAGS¤¬ÄêµÁ¤µ ¤ì¤Æ¤¤¤ë¤È¤­¡¤AM_CFLAGS¤ÎÂå¤ï¤ê¤Ë¤½¤ì¤ò»ÈÍѤ¹¤ë¤Î¤Ç¡¤¤Û¤È¤ó¤É²¿ ¤â¤·¤Þ¤»¤ó¡¥¤·¤«¤·¡¤ÉûºîÍѤȤ·¤Æ¡¤prog.c¤Èfoo.c¤ò prog-prog.$(OBJEXT)¤Èprog-foo.$(OBJEXT)¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¡¤ ÌäÂê¤ò²ò·è¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡¥