WindowsXP でgaim-1.3.1 のビルドをしてみるテスト はじめに
Cygwinを入れるbashとかpatchとかtarとか使う MinGWを入れるhttp://prdownloads.sf.net/mingw から3.1.0 を落とす(いつのまにか3.1.0でも大丈夫になっていた) インストーラを起動して、C:\MinGW に入れる 入れたら、Cygwinのコマンドラインから使えるようにパスに追加 PATH=/cygdrive/c/MinGW/bin:$PATH コンパイルする場所を決める日本語とかスペースがパスに混じってると不幸になるかもしれない 今回は /cygdrive/c/WINDOWS/Temp 以下で作業をすることにする コンパイルする場所に、win32-dev を作る mkdir win32-dev gtk関連のソースを展開さっき掘ったwin32-devに展開する tar zxvf ~/gaim/gtk-dev-2.6.7-rev-a.tar.gz -C win32-dev ActivePerlを入れるActivePerl-5.8.4.810-MSWin32-x86.zip を展開して Installer.bat をダブルリックして、Enterを押し続ければ完了 ちなみに、C:\Perlに入る perl582.tar.gzを展開win32-devに展開 tar zxvf ~/gaim/perl582.tar.gz -C win32-dev tcl-8.4.5を展開win32-devに展開する tar zxvf ~/gaim/tcl-8.4.5.tar.gz -C win32-dev aspell-dev-0-50-3-3を展開win32-devに置く際はディレクトリ構成に注意 以下のように置けばOK win32-dev/aspell-dev-0-50-3-3/lib win32-dev/aspell-dev-0-50-3-3/include gtkspell-2.0.6を展開win32-devに展開する tar zxvf ~/gaim/gtkspell-2.0.6.tar.gz -C win32-dev nspr-4.4.1とnss-3.9を展開win32-devに置く これもディレクトリ構成に注意 win32-dev/nss-3.9/bin win32-dev/nspr-4.4.1/bin silc-toolkit-0.9.12を展開win32-devに置く tar zxvf ~/gaim/silc-toolkit-0.9.12.tar.gz -C win32-dev gaim本体の展開tar jxvf ~/gaim/gaim-1.3.1.tar.bz2 gaimという名前のディレクトリにする必要があるんだそうだ ln -nfs gaim-1.3.1 gaim yazさんパッチ当てyazさんのページは http://www.cc.rim.or.jp/~yaz/patch.html cd gaim zcat ~/gaim/gaim-1.3.1_jp.patch.gz | patch -p1 素だとWindowsでビルド通らないみたいなんで src/protocols/irc/parse.cをいじる 235行目 escpos = rindex(utf8, 0x1B); を escpos = strrchr(utf8, 0x1B); バージョン表記が1.3.1cvsになるのがうざいのでVERSIONの中身を 1.3.1cvs から 1.3.1 に変更 ついでにちょっと外見もいじってみるかhttp://garakuta.homelinux.org/~nosuke/tsubo/files/linux/gaim-1.3.0-fontsize.diff patch -p0 < ~/gaim/gaim-1.3.0-fontsize.diff gtk-2.6.7-rev-a-installerの展開ここは公式の手順とちょっと違う このファイルは、本当は後でインストーラを構築する段階で必要になるが、 これに入っているiconv.dllをgaim本体のビルドで使いたいのでこの時点で 入れておく gaimやwin32-devと同じ階層で展開しておく(ビルドは後で) tar zxvf ~/gaim/gtk-2.6.7-rev-a-installer.tar.gz パスを控えめに通しておく PATH=$PATH:/cygdrive/c/WINDOWS/TEMP/gtk_installer/gtk_install_files/bin ついでにgtk.immodulesを作りなおしておこう(適当) mv /cygdrive/c/WINDOWS/Temp/gtk_installer/gtk_install_files/etc/gtk-2.0/gtk.immodules{,.old} PATH=$PATH:/cygdrive/c/WINDOWS/Temp/gtk_installer/gtk_install_files/bin \ win32-dev/gtk_2_0/bin/gtk-query-immodules-2.0.exe | \ sed -e 's|c:/WINDOWS/TEMP/gtk_installer/gtk_install_files|c:/Program Files/Common Files/GTK/2.0|g' >! \ /cygdrive/c/WINDOWS/Temp/gtk_installer/gtk_install_files/etc/gtk-2.0/gtk.immodules gaimのビルドgaimディレクトリ内で以下を実行すればwin32-install-dir以下に実行ファイルができる make -f Makefile.mingw install インストーラも作りたい場合は以下へ続く nsis202をインストールインストールしたら、パスを通す PATH=/cygdrive/c/Program\ Files/NSIS:$PATH 先ほど展開したgtk-2.6.7-rev-a-installerをビルド展開してできたディレクトリ(gtk_installer)に移動して以下を実行 ./build.sh gaim-inst-deps.tar.gzを展開win32-devに展開する tar zxvf ~/gaim/gaim-inst-deps.tar.gz -C win32-dev gaimのインストーラの構築環境変数LANGをセットしているとNSISが落ちるので、ここで切っておく unset LANG あとはgaimディレクトリに移動して、makeするだけ make -f Makefile.mingw installer installer_nogtk ちゃんと終わると、gaimの下にgaim-1.3.1.exeとgaim-1.3.1-no-gtk.exeができている |