ダウンロードとインストール

まずは、Protocol Bufferのダウンロードとインストールを行っていきたい。

Protocol Bufferのインストールは、makeとCコンパイラを使って、C++のソースコードをビルドするというのが基本だ。Mac OS XやLinuxなどのUNIX互換環境をご利用の方は、こうした方法を用いれば良い。

Windowsユーザは、Cygwinなどのツールを用いれば自分でビルドすることもできるが、実行バイナリも用意されている。こちらの方が簡便なのでお薦めだが、JavaやPythonを利用したい場合は結局ソースコードも必要になる。

これらを踏まえて、Protocol Bufferのインストールを行っていきたい。以下のような手順に沿って説明していく。

  1. protocコマンドのインストール(Windows/UNIXを個別に)
  2. Java用ランタイムライブラリのビルド
  3. Python用ランタイムライブラリのビルド(おまけ)

protocコマンドのインストール

protocコマンドとは、Protocol Bufferの中核をなすコマンドだ。その利用方法は後で紹介するとして、まずはprotocコマンドのインストール方法を見ていきたい。

Windowsユーザは、コマンドのインストールに際してビルドなどの作業は必要ない。こちらのサイトから「protobuf-2.0.0beta-win32.zip」というファイルをダウンロードして、zipアーカイブを展開する。すると「protoc.exe」という実行ファイルが生成されるので、そのファイルをコマンドとして利用可能にする(Path環境変数に、ファイルの親ディレクトリを追加する)。以下は、コマンドプロンプトからPath環境変数を変更するコマンドの例だ。

> set Path=%Path%;C:\path\to\protoc\dir

Mac OS XやLinuxなどのUNIX互換環境をご利用の方は、先ほどと同じサイトから「protobuf-2.0.0beta.tar.gz (.bz2)」などのファイルをダウンロードし、中に含まれているC++のソースコードをビルドする必要がある。makeやC++コンパイラが利用できる環境で、以下のような一連のコマンドを実行して欲しい。最後のコマンド(make install)を実行するためにはルート権限が必要になる。筆者は、Xcode 3.0がインストールされたMac OS X 10.5.4上で動作確認を行っている。

> ./configure
> make
> make check
> make install

これらのコマンドが正常に終了すると、/usr/local/binディレクトリにprotocコマンドがインストールされる。

どちらの環境においても、以下のコマンドを実行して動作確認を行って欲しい。「libprotoc バージョン番号」が表示されれば、コマンドのインストールは成功だ。

> protoc --version
libprotoc 2.0.0

Java用ランタイムライブラリのビルド

Protocol BufferをJavaから扱うためには、Java用のランタイムライブラリが必要となる。次に行うのはライブラリのビルドだ。

現在のところ、ランタイムライブラリもソースコードの形式でしか提供されていない。結局、Windowsユーザも先ほどと同じサイトからソースコードを入手し、展開しておく必要があるということだ。展開したら、その下のsrcディレクトリ内に、先ほどのprotoc.exeをコピーしておいて欲しい(UNIX環境で、protocをソースからビルドした人は必要ない)。

Javaランタイムライブラリをビルドするためには、バージョン5以上のJDKと、Maven2のインストールが必要だ。これらがインストールされた状態で、「ソースコードのルートディレクトリ/java」に移動し、以下のコマンドを実行する。

 mvn test install

依存関係にある様々なライブラリやプラグインがダウンロードされた後、ビルドが実行され、ローカルリポジトリ内にProtocol BufferのライブラリがJAR形式でインストールされる。