Previous: Compiling Fortran 77 Files, Up: Fortran 77 Support   [Contents][Index]


7.11.3 C¤ÈC++¤È¡¤Fortran 77¤Îº®ºß

Automake¤Ï¸½ºß¡¤Fortran 77¤ÈC¤½¤·¤Æ/¤Þ¤¿¤ÏC++¤¬º®ºß¤·¤Æ¤¤¤ë¥×¥í¥°¥é¥à ¤È¶¦Í­¥é¥¤¥Ö¥é¥ê¤òºîÀ®¤¹¤ë¤¿¤á¡¤¸ÂÄꤵ¤ì¤¿¥µ¥Ý¡¼¥È¤òÄ󶡤·¤Æ¤¤ ¤Þ¤¹¡¥¤·¤«¤·¡¤(¸½ºß¤Ï)Automake¤Ë¤è¤Ã¤Æ½èÍý¤µ¤ì¤Þ¤»¤ó¤¬¡¤Â¾¤Î¥Ñ¥Ã ¥±¡¼¥¸6¤Ç½èÍý¤µ¤ì¤ë¡¤Fortran 77¤È¾¤Î¸À ÍդȤκ®ºß¤Ë´ØÏ¢¤·¤Æ¡¤Â¿¤¯¤ÎÌäÂ꤬ȯÀ¸¤·¤Æ¤¤¤Þ¤¹¡¥

Automake¤ÏÆó¤Ä¤ÎÊýË¡¤Ç¤½¤ì¤ò½õ¤±¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥

  1. ¥½¡¼¥¹¥³¡¼¥É¤ÎÁȤ߹ç¤ï¤»¤Ë°Í¸¤·¤¿¥ê¥ó¥«¤Î¼«Æ°Åª¤ÊÁªÂò¡¥
  2. ŬÀÚ¤ÊFortran 77¤Î¥¤¥ó¥È¥ê¥ó¥·¥Ã¥¯¤È¥é¥ó¥¿¥¤¥à¥é¥¤¥Ö¥é¥ê¤Ë¥ê¥ó¥¯¤¹¤ë¤¿ ¤á¤Ë¡¤¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤¿¥ê¥ó¥«¤ËÅϤ¹Å¬Àڤʥê¥ó¥«¥Õ¥é¥°(Î㤨¤Ð‘-L’ ¤È‘-l’)¤Î¼«Æ°Åª¤ÊÁªÂò¡¥

    ¤³¤ì¤é¤ÎÄɲ䵤줿Fortran 77¥ê¥ó¥«¥Õ¥é¥°¤Ï¡¤Autoconf(Autoconf¥Ð¡¼¥¸¥ç ¥ó2.13¤ä¤½¤ì°Ê¹ß)¤Î¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Ç¶¡µë¤µ¤ì¤¿¡¤ AC_F77_LIBRARY_LDFLAGS¤È¤¤¤¦Autoconf¥Þ¥¯¥í¤Ç¤Î½ÐÎÏÊÑ¿ô FLIBS¤ÇÄ󶡤µ¤ì¤Þ¤¹¡¥See Fortran 77 Compiler Characteristics in The Autoconf.

(_PROGRAMS¤ä_LTLIBRARIES¥×¥é¥¤¥Þ¥ê¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ê) ¥×¥í¥°¥é¥à¤ä¶¦Í­¥é¥¤¥Ö¥é¥ê¤¬¡¤Fortran 77¤È¡¤C¤½¤·¤Æ/¤Þ¤¿¤ÏC++¤¬º®¹ç¤¹ ¤ë¥½¡¼¥¹¥³¡¼¥É¤ò´Þ¤ó¤Ç¤¤¤ë¤³¤È¤òAutomake¤¬¸¡½Ð¤·¤¿¾ì¹ç¡¤ AC_F77_LIBRARY_LDFLAGS¥Þ¥¯¥í¤òconfigure.ac¤Ç¸Æ¤Ó½Ð¤·¡¤ $(FLIBS)¤¬¡¤Å¬ÀÚ¤Ê(¥×¥í¥°¥é¥à¤ËÂФ¹¤ë)_LDADD¤ä¡¤(¶¦Í­¥é ¥¤¥Ö¥é¥ê¤ËÂФ¹¤ë)_LIBADDÊÑ¿ô¤Î¤¤¤º¤ì¤«¤Ç½ñ¤«¤ì¤Æ¤¤¤ë¤³¤È¤òÍ×µá ¤·¤Þ¤¹¡¥$(FLIBS)¤¬Å¬ÀÚ¤Ê_LDADD¤ä_LIBADDÊÑ¿ô¤Ë½ñ¤« ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Î¤«¤á¤ë¤Î¤Ï¡¤Makefile.am¤ò½ñ¤¤¤Æ¤¤¤ë¿Í¤ÎÀÕǤ¤Ç¤¹¡¥

Î㤨¤Ð¡¤°Ê²¼¤ÎMakefile.am¤ò¹Í¤¨¤Þ¤¹¡¥

bin_PROGRAMS = foo
foo_SOURCES  = main.cc foo.f
foo_LDADD    = libfoo.la $(FLIBS)

pkglib_LTLIBRARIES = libfoo.la
libfoo_la_SOURCES  = bar.f baz.c zardoz.cc
libfoo_la_LIBADD   = $(FLIBS)

¤³¤Î¾õ¶·¤Ç¤Ï¡¤Automake¤Ï¡¤AC_F77_LIBRARY_LDFLAGS¤¬ configure.ac¤Çµ­½Ò¤µ¤ì¤ë¤³¤È¤ò¶¯¤¯Í׵ᤷ¤Þ¤¹¡¥¤Þ¤¿¡¤ $(FLIBS)¤¬foo_LDADD¤Èlibfoo_la_LIBADD¤Çµ­½Ò¤µ¤ì¤Æ ¤¤¤Ê¤¤¾ì¹ç¤â¡¤Automake¤Ï·Ù¹ð¤ò½Ð¤·¤Þ¤¹¡¥


Footnotes

(6)

Î㤨¤Ð¡¤ the cfortran package ¤Ï¡¤¤³¤ì¤é¤¹¤Ù¤Æ¤Î¸À¸ì´Ö¤ÎÌäÂê¤ò°·¤¤¡¤¤Û¤È¤ó¤É¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Û¡¼¥à¤Î¡¤ ¤Û¤È¤ó¤É¤¹¤Ù¤Æ¤ÎFortran 77¡¤C¡¤¤½¤·¤ÆC++¥³¥ó¥Ñ¥¤¥é¤Çưºî¤·¤Þ¤¹¡¥¤·¤«¤· ¤Ê¤¬¤é¡¤cfortran¤Ï¤Þ¤À¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¤¼¡¤Î ¥á¥¸¥ã¡¼¥ê¥ê¡¼¥¹¤Ç¤½¤¦¤Ê¤ë¤Ç¤·¤ç¤¦¡¥