【ハウツー】

XMLはもう不要!? Google製シリアライズツール「Protocol Buffer」

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

    白石俊平  [2008/07/18]

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

    まずは、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形式でインストールされる。

    関連したタグ

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン