今回MinGWをすべて自分でビルドするにあたってのコンセプト
目標その1. ビルドに必要な開発補助ツール・ライブラリなども可能な限りソースからコンパイルする。現在の達成状況はこちら→mingw32編msys編
目標その2. 可能な限り最新版ソースを使用する。(svn、git利用も含む)
目標その3. UNIXからの移植がしやすいmingw-w64を使用。ただし32bitマシン上のネイティブ環境ですべてコンパイルすること。クロスコンパイル(Cygwinを含む)は無しの方向。
以下2012年11月吉日におこなった自己流のMinGW環境ビルドのerror.blogです。

mingwのリストで最後まで残ったgdbのコンパイルに挑みます。gdbのconfigureでちょうどexpatとliblzmaがチェックされるので、このタイミングでインストールしました。これで、mingw編は終了。次回からは怒涛のmsys編に移ります。

2-19. expatのインストール
(リスト番号47,48)

url : http://expat.sourceforge.net/
release : 2.1.0
cvs: :pserver:anonymous@expat.cvs.sourceforge.net:/cvsroot/expat

cvs版を使用。cmakeに移行中のためかautotoolsがうまく動かないので、expat-2.1.0.tar.gzから以下のファイルをコピーしました。
conftools/config.guess
conftools/config.sub
conftools/install-sh
これで問題なくインストールできます。
./buildconf.sh
./configure --prefix=/mingw
make
make install
2-20. xzのインストール (リスト番号67,114)

url : http://tukaani.org/xz/
release : 5.0.4
git : http://git.tukaani.org/xz.git

git版を使用。
./autogen.sh
./configure --prefix=/mingw --disable-threads --disable-xz --disable-xzdec --disable-lzmadec --disable-lzmainfo --disable-lzma-links --disable-scripts
make
make isntall-strip
「--disable-threads」はwinpthreads が対応してないので無効にしています。それ以下のconfigure オプションはライブラリのみが欲しいので全部disable にしました。これがないと一生使うことが無さそうなxzcat、xzdiffなどのゴミのようなツール群がインストールされます。

2-21. gdbのインストール
(リスト番号35)

url : http://www.gnu.org/software/gdb/
release : 7.5.1
cvs : :pserver:anoncvs@sourceware.org:/cvs/src

cvs版を使用。
./configure --prefix=/mingw
make
gdb/gdb.cのコンパイルで以下のエラー。
cc1.exe: error: -Wformat-nonliteral ignored without -Wformat [-Werror=format-nonliteral]
要は、CFLAGSの-Wformat-nonliteralは-Wformatとの組み合わせでなければならないということです。ログを読むと -Wno-formatが何故か混じっているので当然エラーとなります。
ここはgdb/Makefileを直接書き換えるという素人志向で対処。「-Wformat-nonliteral 」で検索して削除し、再度トライ。
make
make install
これで、mingwのパッケージは全て完了。



Part 8←