Gaucheの野良ビルドでうまくロードできないDLLができてしまうので、
再検証用に一度MinGW環境をリセットすることにした。
やることは3つ。
- MinGWのバイナリを展開
- MSYS-1.0.11.exeをインストール
- MSYSのバイナリを展開
MinGWのサイトから以下をダウンロードしてきてc:/MinGWに展開しておく。
ちなみに以下はgcc 4.4.0の環境にするためのものです。
(最低限にするんだったらまったくいらないものも混じってます。)
autoconf-7-1-mingw32-bin.tar.lzma autoconf2.1-2.13-4-mingw32-bin.tar.lzma autoconf2.5-2.64-1-mingw32-bin.tar.lzma automake-4-1-mingw32-bin.tar.lzma automake1.10-1.10.2-1-mingw32-bin.tar.lzma automake1.11-1.11-1-mingw32-bin.tar.lzma automake1.4-1.4p6-1-mingw32-bin.tar.lzma automake1.5-1.5-1-mingw32-bin.tar.lzma automake1.6-1.6.3-1-mingw32-bin.tar.lzma automake1.7-1.7.9-1-mingw32-bin.tar.lzma automake1.8-1.8.5-1-mingw32-bin.tar.lzma automake1.9-1.9.6-3-mingw32-bin.tar.lzma binutils-2.20.51-1-mingw32-bin.tar.lzma expat-2.0.1-1-mingw32-bin.tar.gz gcc-c++-4.4.0-mingw32-bin.tar.gz gcc-c++-4.4.0-mingw32-dll.tar.gz gcc-core-4.4.0-mingw32-bin.tar.gz gcc-core-4.4.0-mingw32-dll.tar.gz gdb-7.1-2-mingw32-bin.tar.gz gendef-1.0.1346-1-mingw32-bin.tar.lzma gmp-4.2.4-mingw32-dll.tar.gz libcharset-1.13.1-1-mingw32-dll-1.tar.lzma libexpat-2.0.1-1-mingw32-dev.tar.gz libexpat-2.0.1-1-mingw32-dll-1.tar.gz libiconv-1.13.1-1-mingw32-bin.tar.lzma libiconv-1.13.1-1-mingw32-dev.tar.lzma libiconv-1.13.1-1-mingw32-dll-2.tar.lzma libltdl-2.2.7a-1-mingw32-dev.tar.lzma libltdl-2.2.7a-1-mingw32-dll-7.tar.lzma libmpc-0.8.1-1-mingw32-dll-2.tar.lzma libmpfr-2.4.1-1-mingw32-dll-1.tar.lzma libpopt-1.15-1-mingw32-dev.tar.lzma libpopt-1.15-1-mingw32-dll-0.tar.lzma libpthread-2.8.0-3-mingw32-dll-2.tar.lzma libtool-2.2.7a-1-mingw32-bin.tar.lzma libz-1.2.3-1-mingw32-dev.tar.gz libz-1.2.3-1-mingw32-dll-1.tar.gz make-3.82-1-mingw32-bin.tar.lzma mingw-catgets-1.0-bin.tar.gz mingw-catgets-1.0-dev.tar.gz mingw-libgnurx-2.5.1-bin.tar.gz mingw-libgnurx-2.5.1-dev.tar.gz mingw-utils-0.4-1-mingw32-bin.tar.lzma mingwrt-3.18-mingw32-dev.tar.gz mingwrt-3.18-mingw32-dll.tar.gz mpfr-2.4.1-mingw32-dll.tar.gz pexports-0.44-1-mingw32-bin.tar.lzma pthreads-w32-2.8.0-3-mingw32-dev.tar.lzma w32api-3.14-mingw32-dev.tar.gz
pthreadだけはpthread-win32カテゴリからダウンロードする。
そちらだとファイル名がリネームされていてリンクするのに都合が良くなっています。
具体的には以下のように変更されました。
pthreadGC2.dll -> libpthread-2.dll libpthreadGC2.a -> libpthread.dll.a
MinGWは5.1.6のインストーラがあるけど使わなくてもいいです。
(そっちだとgcc 3.4.5がセットアップされたりした記憶があります。)
MinGW自体も現在はインストーラはリリースせず、mingw-getなるCUIベースでセットアップできるようなものに
移行する方向らしいです。
次にMSYS-1.0.11.exeをインストールする。
これはおとなしくインストーラを使います。インストールするとmsys.batとか用意されているので楽だから、というのが理由です。
最後にMSYSのバイナリを展開して終りです。
このあたりは必要に応じて新しいバイナリを選択すると良いでしょう。
m4はそのままだとバージョンが古いので置き換えました。
あとはランタイムでDLLが必要だとかそんな理由です。
詳細はリリースノートをこまめに読むといいと思います。
bison-2.4.2-1-msys-1.0.13-bin.tar.lzma flex-2.5.35-2-msys-1.0.13-bin.tar.lzma libiconv-1.13.1-2-msys-1.0.13-dll-2.tar.lzma libintl-0.17-2-msys-dll-8.tar.lzma libregex-1.20090805-2-msys-1.0.13-dll-1.tar.lzma m4-1.4.14-1-msys-1.0.13-bin.tar.lzma perl-5.6.1_2-2-msys-1.0.13-bin.tar.lzma libcrypt-1.1_1-3-msys-1.0.13-dll-0.tar.lzma coreutils-5.97-3-msys-1.0.13-bin.tar.lzma coreutils-5.97-3-msys-1.0.13-ext.tar.lzma
とまあこれだけなんですが、
初めてMinGWをインストールしたとき、ものによってはダウンロードページにMinGW版とMSYS版両方あるとか
なんだかよくわからなくて途方にくれたことがあったのをふと思いだしました。