原创文章,转载请注明出处
关于google推出的protocol buffers,这里就不多介绍了,主要是我了解也不多。本文主要从实用角度来说一下,它在cocos2d-x工程里的搭建和应用。
第一步,下载安装:
在 https://code.google.com/p/protobuf/downloads/list 这里下载最新的SourceCode工程, 我用的是2.5.0版本,下载完解压下指定目录下。
编译及拷贝到工程目录下
第三步, 在工程中编译这些文件
这一步有点小复杂
a. 把解压完的目录下 protobuf-2.5.0/src/google整个目录拷贝到cocos2d-x工程下的libs目录下。
b. 把解压完的目录下 config.h 拷贝到 libs/google 目录下,主要是放到一些宏定义, 没办法,代码被引用了。
c. 删除编译多语言相关文件,google/protobuf/compiler 目录是用来编译多语言的,删除
d. 删除单元测试文件 所有 ***unittest.cc 文件是测试用例(根据文件名猜的),删除, 还有两个tesst打着的文件夹
e. 删除其它文件,编译过程中还有一两处错误,删除相应.cc文件
Ok 编译运行成功。
关于google推出的protocol buffers,这里就不多介绍了,主要是我了解也不多。本文主要从实用角度来说一下,它在cocos2d-x工程里的搭建和应用。
第一步,下载安装:
在 https://code.google.com/p/protobuf/downloads/list 这里下载最新的SourceCode工程, 我用的是2.5.0版本,下载完解压下指定目录下。
cd yourDir ./configure make make check sudo make install
其中,./configure, 可能遇到的问题有(其中就是我遇到的问题),
a. gcc不存在,原因可能是没有安装Xcode
b. gcc 命令可用了, 但出现"C compiler is in use.....no"(类似这么一个提示),查看config.log, 会提示 crt1.10.6.o 链接时这个文件找不到, 解决方式是链接了一个过去
c. “stdio.h” 文件找不到
以上三个原因, 最好的方式都是:Xcode->Preferences->Downloads下的Components下,选择安装Command Line Tools
安装好之后, 再依次执行上面三条命令,安装完成
第二步,把.proto配置文件,编译成多种代码文件
ProtocolLogic.proto文件
package lm; message helloworld { required int32 age = 1; required string name = 2; optional string phone = 3; }
编译及拷贝到工程目录下
protoc -I=./ --cpp_out=./code_out ProtocolLogic.proto cp ./code_out/ProtocolLogic.pb.cc ~/*****/ProtocolLogic.pb.cpp cp ./code_out/ProtocolLogic.pb.h ~/*****/ProtocBuffers/
第三步, 在工程中编译这些文件
这一步有点小复杂
a. 把解压完的目录下 protobuf-2.5.0/src/google整个目录拷贝到cocos2d-x工程下的libs目录下。
b. 把解压完的目录下 config.h 拷贝到 libs/google 目录下,主要是放到一些宏定义, 没办法,代码被引用了。
c. 删除编译多语言相关文件,google/protobuf/compiler 目录是用来编译多语言的,删除
d. 删除单元测试文件 所有 ***unittest.cc 文件是测试用例(根据文件名猜的),删除, 还有两个tesst打着的文件夹
e. 删除其它文件,编译过程中还有一两处错误,删除相应.cc文件
Ok 编译运行成功。
作者:rct1985 发表于2013-7-16 11:06:49 原文链接
阅读:40 评论:0 查看评论