WindowsでBazaarをビルドするためのメモ
WindowsでBazaarを使うためには、スタンドアロンインストーラを使えばいいんですが、Python Baseでインストールしておくと、PythonスクリプトからBazaarのAPIを叩けたりして何かと便利です。
Python Basedインストーラも配布されているんですが、せっかくなので、何かと面倒なWindowsでのビルド手順をまとめておきます。
Linuxの場合はPackage管理システムに任せておけば良しなにしてくれるのでいいですね。
必要なもの
以下のモジュールをインストールします。
※Python Basedインストーラを使う場合は、コンパイラは必要ありませんが、その他のものは同じようにインストールしておく必要があります。
Python関連
インタプリタは、2.6.xか2.7.xをインストールします。 Download Python | Python.org
コンパイラ
コンパイラとして、Visual Studio 2008か、MinGWのどちらかが必要です。
- Visual Studio
- Express Edition(フリーのもの)で構わないので、ここ(http://www.microsoft.com/japan/msdn/vstudio/2008/product/express/)からVisual Studio 2008 C++ Expressをダウンロードしてインストールします。
- Visual Studioを使う場合、さらにGNU MakeとGNU Gettextも必要になります。GnuWin32(GnuWin32 Packages)からダウンロードしてインストールするか、MinGW/MSYSをインストールします。
- MinGW
- ここ(MinGW - Minimalist GNU for Windows - Browse Files at SourceForge.net)から、mingw-get-inst-xxxxxxxx.exeをダウンロードしてインストールします。インストール時にMSYS Base Systemも選択しておきます。
- MinGWを使う場合、そのままではPythonパッケージのビルドに失敗するので、以下のように環境を修正します。
Pythonパッケージ
- distribute
- distribute · PyPI からソースをダウンロードして展開し、そのフォルダで以下のコマンドを実行します。
$ python setup.py install
- distribute · PyPI からソースをダウンロードして展開し、そのフォルダで以下のコマンドを実行します。
- pycurl
- 公式ではPython2.5までしかバイナリが配布されていないので、自分でビルドする必要があります。
非公式のものでよければ、ここ(Python Extension Packages for Windows - Christoph Gohlke)でインストーラが配布されています。
- 公式ではPython2.5までしかバイナリが配布されていないので、自分でビルドする必要があります。
- win32 extension
- ここ(Python for Windows Extensions - Browse /pywin32/Build216 at SourceForge.net)からインストーラをダウンロードしてインストールします。
- pyqt4 (qbzr、bzr explorerを使う場合)
- ここ(Riverbank | Software | PyQt | PyQt4 Download)からインストーラをダウンロードしてインストールします。
- pycrypto、paramiko、cython、pyrex、docutils
- 以下のコマンドを実行します。
$ easy_install pycrypto
$ easy_install paramiko
$ easy_install cython
$ easy_install pyrex
$ easy_install docutils
- 以下のコマンドを実行します。
ビルド
- Bazaar project files : Bazaarから、ソースをダウンロードして展開します。
- 展開したフォルダ上で、以下のコマンドを実行します。
$ make
$ python setup.py build - ビルドが成功したら、以下のコマンドでインストールします。
$ python setup.py install
プラグインの配置
- プラグイン配置用のフォルダを適当な場所に作成します。
- BZR_PLUGIN_PATHという環境変数を定義して、そこに今作ったフォルダのパスを指定します。
- Launchpadなどから必要なプラグインをダウンロードして、そのフォルダに配置します。
(おまけ)bzr-svnプラグインとsubvertpyについて
bzr-svnプラグインを使いたい場合は、subvertpyというPythonパッケージをまずインストールしないといけないのですが、これが面倒なのでやり方をまとめておきます。
- python svn bindingのインストール
- Python2.6の場合は、ここ(http://sourceforge.net/projects/win32svn/files/1.6.17/svn-win32-1.6.17_py.zip)からダウンロードしてインストールできます。
- Python2.7の場合、公式なバイナリは無いので、ここ(http://trac.edgewall.org/attachment/wiki/TracSubversion/svn-win32-1.6.15_py_2.7.zip)からダウンロードして解凍し、svnとlibsvnを$PYTHON_HOME/lib/site-packagesに放り込んでください。
- Subversion-devの配置
- http://sourceforge.net/projects/win32svn/files/1.6.17/svn-win32-1.6.17_dev.zip をダウンロードして解凍し、そのパスをSVN_DEV環境変数に設定します。
- http://subversion.tigris.org/files/documents/15/32472/db-4.4.20-win32.zip をダウンロードして解凍し、そのパスをSVN_BDB環境変数に設定します。
- http://subversion.tigris.org/files/documents/15/20739/svn-win32-libintl.zip をダウンロードして解凍し、そのパスをSVN_LIBINTL環境変数に設定します。
- subvertpyのビルド
- これで、subvertpyがビルドできるようになりました。この状態で、以下のコマンドを実行します。
$ easy_install subvertpy
- これで、subvertpyがビルドできるようになりました。この状態で、以下のコマンドを実行します。