MinGW環境をちょろっとセットアップするには

Gauche野良ビルドでうまくロードできないDLLができてしまうので、
再検証用に一度MinGW環境をリセットすることにした。

やることは3つ。

  1. MinGWのバイナリを展開
  2. MSYS-1.0.11.exeをインストール
  3. 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版両方あるとか
なんだかよくわからなくて途方にくれたことがあったのをふと思いだしました。