「Protocol Buffers」の編集履歴(バックアップ)一覧はこちら
「Protocol Buffers」(2010/06/01 (火) 21:21:37) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
本家
http://code.google.com/p/protobuf/
バージョン 2.3.0 利用手順
* Mac環境 Java
** ダウンロード
http://code.google.com/p/protobuf/downloads/list
protobuf-2.3.0.tar.gz Protocol Buffers 2.3.0 full source -- C++, Java, Python Featured
ダウンロードして解凍する
** インストール セットアップ
プロトコルバッファのインストール
cd protobuf-2.3.0
./configure
make
make check
sudo make install
/usr/local/binにインストールされる
Javaライブラリのビルド
cd ./protobuf-2.3.0/java
mvn test
mvn install
mvn package
./protobuf-2.3.0/java/target/protobuf-java-2.3.0.jar に生成される
** サンプルコードの実行
プロトコルバッファを使ってデータを格納するクラスを作成
cd examples
protoc --java_out=. addressbook.proto
./protobuf-2.3.0/examples/com/example/tutorial/AddressBookProtos.java に生成される
Eclipseのプロジェクトを作成して、生成したコードをインポートして、クラスパスに生成したjarを加える。
下記のmainが記述されているサンプルコードをインポートする。
./protobuf-2.3.0/examples/AddPerson.java
./protobuf-2.3.0/examples/ListPeople.java
これらのmainメソッドには引数が必要となっているので、書き直す。
public static void main(String[] args) throws Exception {
args = new String[]{"addressbook"}; // 第一引数にファイル名を付け加える
AddPerson.java、ListPeople.javaをそれぞれ実行して試す。
これらはファイルの書き込み、読み取りのサンプルとなっている。
※AddPerson.javaは、コンソールで入力待になるので、適当に入力する。
* Win環境 C++
** ダウンロード
http://code.google.com/p/protobuf/downloads/list
protobuf-2.3.0.zip
protoc-2.3.0-win32.zip
解凍する
.\protoc.exe
.\protobuf-2.3.0\・・・
** サンプルファイルを動かす
プロトコルバッファを使ってデータを格納するクラスを作成
.\protoc.exe --cpp_out=. .\protobuf-2.3.0\examples\addressbook.proto
.\protobuf-2.3.0\examples\addressbook.pb.cc
.\protobuf-2.3.0\examples\addressbook.pb.h
生成される
VisualStudioで
.\protobuf-2.3.0\vsprojects\protobuf.sln
を開く
ソリューション内に、libprotocbuf、libprotoc の2つのプロジェクトだけ残して削除する
libprotocbuf
libprotoc
ソリューションに新規プロジェクトを作成する
win32コンソールアプリケーション
名前 sample
とする
sampleプロジェクトを右クリックして「プロジェクトの依存関係」より、
libprotocbuf
libprotoc
2つのプロジェクトを追加する
サンプルコードのソースをsampleプロジェクトにインポートする
addressbook.pb.h
add_person.cc
addressbook.pb.cc
list_people.cc
sampleプロジェクトを右クリックしてプロパティから、「構成プロパティ」-「C/C++」-「全般」の
「追加のインクルードディレクトリ」にヘッダファイルのルートフォルダを追加
.\protobuf-2.3.0\src
コンパイルエラーを避けるため、サンプルコードのどちらかのmain文を変更しておく
add_person.cc
list_people.cc
ヘッダファイルのインクルードの修正する。
.ccファイルの先頭に
add_person.cc
addressbook.pb.cc
list_people.cc
インクルードの宣言を追加する
#include "stdafx.h"
addressbook.pb.ccのaddressbook.pb.hのインクルードを、同じ階層を見るように修正する
#include "addressbook.pb.h"
----
本家
http://code.google.com/p/protobuf/
バージョン 2.3.0 利用手順
* Mac環境 Java
** ダウンロード
http://code.google.com/p/protobuf/downloads/list
protobuf-2.3.0.tar.gz Protocol Buffers 2.3.0 full source -- C++, Java, Python Featured
ダウンロードして解凍する
** インストール セットアップ
プロトコルバッファのインストール
cd protobuf-2.3.0
./configure
make
make check
sudo make install
/usr/local/binにインストールされる
Javaライブラリのビルド
cd ./protobuf-2.3.0/java
mvn test
mvn install
mvn package
./protobuf-2.3.0/java/target/protobuf-java-2.3.0.jar に生成される
** サンプルコードの実行
プロトコルバッファを使ってデータを格納するクラスを作成
cd examples
protoc --java_out=. addressbook.proto
./protobuf-2.3.0/examples/com/example/tutorial/AddressBookProtos.java に生成される
Eclipseのプロジェクトを作成して、生成したコードをインポートして、クラスパスに生成したjarを加える。
下記のmainが記述されているサンプルコードをインポートする。
./protobuf-2.3.0/examples/AddPerson.java
./protobuf-2.3.0/examples/ListPeople.java
これらのmainメソッドには引数が必要となっているので、書き直す。
public static void main(String[] args) throws Exception {
args = new String[]{"addressbook"}; // 第一引数にファイル名を付け加える
AddPerson.java、ListPeople.javaをそれぞれ実行して試す。
これらはファイルの書き込み、読み取りのサンプルとなっている。
※AddPerson.javaは、コンソールで入力待になるので、適当に入力する。
* Win環境 C++
** ダウンロード
http://code.google.com/p/protobuf/downloads/list
protobuf-2.3.0.zip
protoc-2.3.0-win32.zip
解凍する
.\protoc.exe
.\protobuf-2.3.0\・・・
** サンプルファイルを動かす
プロトコルバッファを使ってデータを格納するクラスを作成
.\protoc.exe --cpp_out=. .\protobuf-2.3.0\examples\addressbook.proto
.\protobuf-2.3.0\examples\addressbook.pb.cc
.\protobuf-2.3.0\examples\addressbook.pb.h
生成される
VisualStudioで
.\protobuf-2.3.0\vsprojects\protobuf.sln
を開く
ソリューション内に、libprotocbuf、libprotoc の2つのプロジェクトだけ残して削除する
libprotocbuf
libprotoc
ソリューションに新規プロジェクトを作成する
win32コンソールアプリケーション
名前 sample
とする
sampleプロジェクトを右クリックして「プロジェクトの依存関係」より、
libprotocbuf
libprotoc
2つのプロジェクトを追加する
サンプルコードのソースをsampleプロジェクトにインポートする
addressbook.pb.h
add_person.cc
addressbook.pb.cc
list_people.cc
sampleプロジェクトを右クリックしてプロパティから、「構成プロパティ」-「C/C++」-「全般」の
「追加のインクルードディレクトリ」にヘッダファイルのルートフォルダを追加
.\protobuf-2.3.0\src
コンパイルエラーを避けるため、サンプルコードのどちらかのmain文を変更しておく
add_person.cc
list_people.cc
ヘッダファイルのインクルードの修正する。
.ccファイルの先頭に
add_person.cc
addressbook.pb.cc
list_people.cc
インクルードの宣言を追加する
#include "stdafx.h"
addressbook.pb.ccのaddressbook.pb.hのインクルードを、同じ階層を見るように修正する
#include "addressbook.pb.h"
sampleプロジェクトを右クリックしてプロパティから、「構成プロパティ」-「リン化ー」-「入力」の
「追加の依存ファイル」にLibファイルを追加
(絶対パスにする?)\protobuf-2.3.0\vsprojects\Release\libprotobuf.lib
----