2013年4月9日火曜日

Windows7 64bitでgimp2.8.4、gimp2.9~、gimp-painterをビルド(その4)


msys・gccのバージョンアップ

これまでの手順だと、
gccは4.7.0なのでバージョンをあげてみる。
4.8.0はvirtualメソッドの不具合?でうまくコンパイルできないパッケージがあった。

msysはインストールするタイミングで
最新がとられると思うので、
あがらないかも。
確認したmsysCOREのバージョンは1.0.18でした。


(1)バックアップ

C:\MinGW\msys\1.0\etc\profile
が上書きされるようなので、
バックアップする。

C:\MinGW\mingw64\bin\.gdbinit
もバックアップする。


(2)msysアップデート

msysから
mingw-get update
mingw-get upgrade

upgradeで、
32bit関連のgccが入ったりするが
そのあたりは使わないように注意する。

C:\MinGW\msys\1.0\etc\profile
を元に戻す。

msysコンソールを閉じる。


(3)GCCアップデート

C:\MinGW\mingw64
の中身を適当なバックアップフォルダへ移動。

4.7.2をダウンロード
http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/rubenvb/gcc-4.7-release/x86_64-w64-mingw32-gcc-4.7.2-release-win64_rubenvb.7z/download

x86_64-w64-mingw32-gcc-4.7.2-release-win64_rubenvb.7z
をC:\MinGW\mingw64に展開して、
msysを起動する。

gcc --version

gcc.exe (rubenvb-4.7.2-release) 4.7.2
になっていることを確認する。

C:\MinGW\mingw64\bin\.gdbinit
を元に戻す。


(4)コンパイルオプション見直し

デフォルトで使うコンパイルオプションもいじってみた。

C:\MinGW\local64\etc\profile.local
CFLAGS="-I/local64/include -mms-bitfields -mthreads -O2 -mtune=athlon64 -mfpmath=sse -msse"
CXXFLAGS="-I/local64/include -mms-bitfields -mthreads -O2 -mtune=athlon64 -mfpmath=sse -msse"

よく使いそうな下記も追記した。
C:\MinGW\local64\etc\profile.local
export PYTHON_INCLUDES="-I/c/Python27/include/"
export PYTHON_LIBS="-L/c/Python27/libs -lpython27"
export PYTHON_LIB_LOC="/c/Python27/libs/"
export ACLOCAL_FLAGS="-I/local64/share/aclocal -I/c/MinGW/opt/share/aclocal"


(5)再コンパイル(半日コース・・・)

「Windows7 64bitでgimp2.8.4、gimp2.9~、gimp-painterをビルド(その1)」の
intltool以降を流しなおしてみる。

全てのパッケージについて、
以下のように、make cleanしてから再度ソースを展開しなおして、make。
パッチがあるのは適用してから、make。

cd $LOCALBUILDDIR
cd intltool-0.50.2
make clean

cd $LOCALBUILDDIR
tar xzf intltool-0.50.2.tar.gz
cd intltool-0.50.2
./configure --prefix=/opt
make
make install

pkg-configだけ、make clean後に、下記ファイルを削除する。
C:\MinGW\local64\bin\pkg-config.exe
C:\MinGW\local64\bin\x86_64-w64-mingw32-pkg-config.exe

C:\MinGW\local64\etc\profile.localでデフォルトを-O2としたので、
gimpのビルドをdebugでやる場合は、

export CFLAGS="$CFLAGS -O0"
export CXXFLAGS="$CXXFLAGS -O0"

を行ってからconfigure、make、make installする。

4.7.2でも特に問題なくビルドできました。

0 件のコメント:

コメントを投稿