2013年1月2日水曜日

[iconv]libiconv コンパイル

  1. MinGW 用の iconv のソース MinGW - Minimalist GNU for Windows | Download MinGW - Minimalist GNU for Windows software for free at SourceForge.net からダウンロードする (2009/10/05 現在 libiconv-1.13.1-1-msys-1.0.11-dev.tar.lzma)
  2. ダウンロードしたパッケージを解凍する
  3. 以下のようなディレクトリ構成に配置する
    libiconv-1.13.1/
    libiconv-1.13.1-1-msys.patch
    msys-build-libiconv
    msys-libiconv.RELEASE_NOTES
    
  4. patch を適用する
    > patch -p1 < libiconv-1.13.1-1-msys.patch
    
  5. libiconv のディレクトリに移動して configure, make
    > cd libiconv-1.13.1
    > sh ./configure --prefix=/c/usr/MinGW --disable-shared --enable-static
    > make
    > make install
    
テストプログラム
Example: iconv_test.c
#include <stdio.h>
#include <iconv.h>

int main(void)
{
 iconv_t icd;
 icd = iconv_open("UTF-8", "Shift_JIS");
 iconv_close(icd);

 return 0;
}
コンパイル
> gcc -o iconv_test.exe iconv_test.c -liconv -static
ここで -static オプションを付けておかないと lib ディレクトリにある libiconv.dll.a (DLL を使用するライブラリ) をリンクしプログラム実行時に libiconv-2.dll を探しに行くDLL を使いたくない場合は -static を忘れないように。
lib ディレクトリには libiconv.a, libiconv.dll.a が存在する。

1 件のコメント:

  1. もう保守してないようですが、ヘッダーファイル名
    消えてますよ。

    返信削除