$OpenXM: OpenXM/doc/HOWTO/asir2000-on-Windows-x64.sjis,v 1.3 2013/12/02 15:39:42 ohara Exp $ Risa/Asir for Windows のビルド方法 (x64 対応) 0. 必要な物 ・Windows 7 x64 または Windows Vista x64 ・Visual Studio 2010 または Visual Studio 2008 ・Cygwin (bash, gzip, tar, patch, coreutils, perl が必要です。) ソースの展開および、texi2html に用いる。 また、インストーラ(Windows installer 形式ファイル)を作成するには、 ・WiX toolset ver.3.7 (http://wixtoolset.org) をインストールし、${WIX}/bin/ に PATH を通すこと。 1. ソースの取得 CVS クライアント(例えば、TortoiseCVS, http://www.tortoisecvs.org/)を用いて、 OpenXM および OpenXM_contrib2 を checkout する. また、OpenXM_dist/ に gc-7.2b.tar.gz, pari-2.0.17.beta.tgz を置く。 2. ビルド (64bit 版) 「Visual Studio x64 Win64 コマンド プロンプト (2010)」から 次のように入力する. C> cd OpenXM_contrib2\windows C> makepkg.bat C> nmake msi makepkg で、asir 以下に全バイナリ・ヘルプが生成される。 これを zip でアーカイブしたものが、asir_win64_XXXX.zip である。 XXXX には日付が入る。例えば、2013年11月23日ならば、2013.11.23 となる。 また、nmake msi と打つことによって、Windows installer 形式 asir_win64_XXXX.msi を生成する。 最後に、次のように入力すると、中間生成ファイル(ヘルプを除く)をすべて消去する。 C> nmake distclean 余計なファイルを消去したので、そのまま、32bit 版の作成に入ることができる。 3. ビルド (32bit 版) 「Visual Studio コマンド プロンプト (2010)」から 次のように入力する. C> cd OpenXM_contrib2\windows C> makepkg.bat C> nmake msi asir_win32_XXXX.zip および、asir_win32_XXXX.msi が作成される。 付録 A. インストーラのアップデート方法 *** 事前に WiX tutorial などを読んでおくこと! *** OpenXM_contrib2/windows/ 以下にある *.wxs がインストーラのソースである。インストーラを ビルドするには、Makefile に記載されている情報が必要である。Makefile に書かれている、 UPGRADEID=B7A582F5-0484-4030-9D38-BFAE00707F0D の行は、「決して変更してはいけない」。変更するとアップグレードできなくなる。 Risa/Asir に改良が加えられたとき、インストーラもアップグレードしなければならない。 まず、Makefile に PRODUCTVER=1.0.12 のような行があるので、このバージョンをあげる(例えば 1.0.13 にする)。次に、Makefile に PRODUCTID=... という行(2か所ある)がある。これは各バージョンに対応しているので、この右辺を必ず変更する こと。右辺は GUIDまたはUUID と呼ばれる 16 バイトの整数値であり、 guidgen.exe (Microsoft で配布) や FreeBSD では、uuidgen コマンドなどで生成できる。 インストールするファイルが増えたり減ったりしたときには、*.wxs も変更しなければならない。 asir/ および asir/bin/ 以下のファイルは asir.wxs で、それ以外のディレクトリの下にある ファイルは _*.wxs で管理されている。Makefile のコメント中に _*.wxs の自動生成に用いる ルールが記載されているが、これを用いて生成したファイルで _*.wxs を上書きしないこと。 インストールされる各ファイルに対して、それぞれ GUID が与えられているが、一度決められた この GUID を変更すべきではないからである。(自動生成すると変わってしまう) 基本的に各 Component 要素が、一つのファイルに対応しているので、WiXedit などで追加して いけばよい。