FreeBSD + MinGWのGCCにGCC 4.1.1を加える

FreeBSDMinGWで使うコンパイラGCC 4.1.1を加えるメモ。
GCC 4.1.1を使ってWindowsアプリをクロスコンパイル出来る様にする。

準備

あらかじめPortsでdevel/mingw32-gccをインストールしておく。


GCC 4.1.1のインストール場所を${HOME}/mingw/gcc41として、${HOME}/mingw/gcc41/mingw32ディレクトリを作り、その下に/usr/local/mingw32以下のincludeとlibをコピーする。

$ mkdir -p ~/mingw/gcc41
$ cd ~/mingw/gcc41
$ mkdir mingw32 ; cd mingw32
$ cp -R /usr/local/mingw32/include include
$ cp -R /usr/local/mingw32/lib lib

GCC 4.1.1のソースを用意する。
ftp://ftp.riken.go.jp/GNU/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2

GCC 4.1.1のコンパイル&インストール

ソースを展開して、configureを下記の通りにする。
CFLAGSのオプションは自分の環境に合わせる。

$ CFLAGS="-O2 -march=pentium4 -fno-strict-aliasing -pipe" \
 ./configure \
 --prefix=${HOME}/mingw/gcc41 \
 --target=mingw32 \
 --enable-languages=c,c++ \
 --with-gcc \
 --with-as=/usr/local/bin/mingw32-as \
 --with-ld=/usr/local/bin/mingw32-ld \
 --enable-threads \
 --disable-debug \
 --disable-nls \
 --disable-shared \
 --disable-win32-registry


あとは、「gmake && gmake install」でインストールされる。
${HOME}/mingw/gcc41/bin/mingw32-gccを${HOME}/bin/mingw32-gcc41にシンボリックリンクを貼って、${HOME}/binにパスを通しておく。