At Fri, 11 Jan 2013 21:09:04 +0900,
Susumu Tanimura wrote:
> Ubuntu12.04 x86_64上に構築したクロスコンパイル環境(MinGW4.6.3)にて、kakasi
> (kakasi-2.3.5pre1-cvs20101217)をコンパイルしようとしたところ、iconvのチ
> ェックでconfigureが止まります。

> checking how to link with libiconv... -liconv
> checking for iconv declaration... 
>          extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, 
> char * *outbuf, size_t *outbytesleft);
> configure: error: in `/tmp/kakasi':
> configure: error: cannot run test program while cross compiling

  iconvのチェックは単純なプログラムを実行してその結果をみるので、
target用(mingw用)バイナリを生成して、実行しようとして失敗したのだと思い
ます。

  ネイティブ環境でconfigureを実行するとconfig.logに結果が残ると思います
が、それをベースに

am_cv_func_iconv=yes
am_cv_func_iconv_works=yes
am_cv_lib_iconv=yes
am_cv_proto_iconv='extern size_t iconv (iconv_t cd, char * *inbuf, size_t 
*inbytesleft, char * *outbuf, size_t *outbytesleft);'

  この4つの環境変数をexportした状態でconfigureを実行したらうまく行きま
せんでしょうか。am_cv_lib_iconvはGNU/Linux環境だとglibcに含まれているの
でnoになるはずですが、mingwなら別途必要なのでyesにする必要があると思い
ます。

  こういうのはhost用コンパイラでチェックするわけにもいかないので(hostの
ライブラリが存在して動くかどうかをみることになる)、しかたのないところだ
と思っています。
_______________________________________________
Kakasi-dev mailing list
[email protected]
http://www.namazu.org/cgi-bin/mailman/listinfo/kakasi-dev

メールによる返信