namazu-dev(ring)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gettext (Re: directory structure)



補足です

Satoru Takabayashi <satoru-t@xxxxxxxxxxxxxxxxxx> wrote:

>    - AM_GNU_GETTEXT を設定した。既存のlibintl.a を検出して
>      いるようだが、LIBS に反映されない。これでは困る。
>      configure を追いかけてみたところ、一度は LIB に -lintl
                                                ^^^ LIBS 

>      が設定されるものの、いつのまにか消えてしまっている。
>      助けてくださいませ。 > 安部さん

さすがに、これだけではあんまりなので、補足します。

[namazu-dev 453] で

|   ./configure --with-included-gettext && make すると、
|   次のエラーメッセージを出力して途中で止まってしまった。
| 
|     gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I. -I.. -I../lib -I../intl -I../intl  -g -O2 -c po-gram.gen.c
|     In file included from ../../src/po-gram.y:27:
|     po-lex.h:39: parse error before `PARAMS'
|     po-lex.h:40: parse error before `PARAMS'
|     po-lex.h:41: parse error before `PARAMS'
|     po-lex.h:42: parse error before `PARAMS'
|     po-lex.h:43: parse error before `PARAMS'
|     In file included from ../../src/po-gram.y:28:
|     po-gram.h:26: parse error before `PARAMS'

と書いたが、これは po-lex.h の先頭に

  #include "config.h"

を追加して解決した。で、 gettext 0.10.35 を make install。


Namazu のディレクトリで gettextize を実行。 intl, po ディレ
クトリを作った。

次に、

  % cat \
    /usr/local/share/aclocal/{gettext,lcmessage,progtest}.m4
  >> aclocal.m4

を実行して aclocal.m4 を更新した。

それから、 ./configure.in に 

  ALL_LINGUAS="ja"
  AM_GNU_GETTEXT

を設定 && autoreconf。このとき、次のような警告が出た。

  configure.in:375: AC_TRY_COMPILE was called before AC_ISC_POSIX

sh-utils-2.0 の aclocal.m4 を見ると

  #serial 1
  dnl This test replaces the one in autoconf.
  dnl Currently this macro should have the same name as the autoconf macro
  dnl because gettext's gettext.m4 (distributed in the automake package)
  dnl still uses it.  Otherwise, the use in gettext.m4 makes autoheader
  dnl give these diagnostics:
  dnl   configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
  dnl   configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
  
  undefine([AC_ISC_POSIX])
  AC_DEFUN(AC_ISC_POSIX,
    [
      dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
      AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
    ]
  )

なるコードが含まれていたので、これをもらってきて Namazu の
acloal.m4 に追加する。これで、くだんの警告は防げた。

が、 ./configure や autoreconf 何度か実行しているうちに、ど
ういうわけか、この部分のコードは aclocal.m4 から消えてしまっ
た。よって、くだんの警告が復活する。何が何だかわからない。

しかし、 src/Makefile.am をいじったりしていると、いつのまに
かくだんの警告は出なくなった。原因は不明。

-- Satoru Takabayashi