mac安装protobuf

首先从http://code.google.com/p/protobuf/下载protobuf

之后需要安装brew

[非root]

brew install autoconf[need to across the great wall and reach the bigger world]

brew install automake

brew install libel

[root]

sudo ./autogen.sh

./configure(先autogen.sh才有,如果没有权限chmod +x configure)

make

make check

make install

protoc —version

显示结果:

sh-3.2# protoc --version

libprotoc 3.0.0

首先手写一个proto文件,然后放在make成功的src文件夹下,看到了闪闪发光的protoc,那就是来编译源proto称为目标文件的编译器。建立文件夹,来存放准备编译的proto文件,不过似乎要放在src的目录下面,否则似乎会出问题。。。按照参考资料的教程来就没问题。

其中ptotoc的参数:

-I(—proto_path) = $SRC_DIR也就是src的绝对路径

—cpp_out = …输出的路径

最后是要编译的proto的绝对路径。

参考资料:

比较好的8、9、3、11

1.protobuf安装

http://blog.csdn.net/yohunl/article/details/41797621

2.遇到问题:

[libprotobuf WARNING google/protobuf/compiler/parser.cc:547] No syntax specified for the proto file: yzh-proto/yzh.proto. Please use ‘syntax = "proto2";‘ or ‘syntax = "proto3";‘ to specify a syntax version. (Defaulted to proto2 syntax.)

http://stackoverflow.com/questions/27958571/serializing-part-of-a-message-with-protobuf

解决方法:在proto的最前面加上syntax = “proto2”

3.一个比较全面的介绍from IBM developer

4.object c

http://www.cnblogs.com/uniy/archive/2011/12/21/2296405.html

http://www.kelvinkaodev.com/blog/2010/08/compiling-the-protocol-buffer-compiler-for-objective-c/

5.mac + protobuf

http://blog.csdn.net/yohunl/article/details/41797621

6. mac上用于编译Google Protobuf 2.5.0 for Xcode5.0/iOS7的脚本

http://blog.csdn.net/hherima/article/details/17172441

7.一个自动安装的脚本

https://gist.github.com/BennettSmith/7150245

8.使用和编码

http://blog.csdn.net/hherima/article/details/21534673

9.Google Protobuf开发指南 很是全面的介绍

http://my.oschina.net/macwe/blog/157862?fromerr=dTsRN7pl

个人认为最有用的部分

protobuf在网络通信中应用

Protobuf在TCP中使用注意事项

我的测试程序使用的TCP,于是一个很自然的问题,报文的边界或者报文长度问题,在网上google了一圈之后发现这个确实是个问题,解决问题的方案也很直接,在报文前面加上一个字段表示整个报文的长度(包括加上的字段)。

bool SerializeToArray(void * data, int size) const

bool SerializeToString(string * output) const

当然还有一些其他变种,我不喜欢使用stl string,所以选用了SerializeToArray

可以使用一下API反序列化:

boolParseFromArray(const void * data, int size)

boolParseFromString(const string & data)

以上写着函数都定义在  google/protobuf/message_lite.h 中

10.google protobuf代码风格

https://developers.google.com/protocol-buffers/docs/style#message-and-field-names

11.github 官方

https://github.com/google/protobuf

12.third party add ones和google无关但是使用了protobuf技术的项目

Third Party Add ons

时间: 2024-11-10 12:29:47

mac安装protobuf的相关文章

mac 安装nginx

1.brew search nginx 2.brew install nginx 启动nginx ,sudo nginx ;访问localhost:8080 发现已出现nginx的欢迎页面了. 备注: ln -s  /usr/local/sbin/nginx /usr/bin/nginx 做个软连接.常用的指令有: nginx -V 查看版本,以及配置文件地址nginx -v 查看版本nginx -c filename 指定配置文件nginx -h 帮助 #重新加载配置|重启|停止|退出 ngi

mac安装brew 软件包管理工具Homebrew

mac 安装 brew  Homebrew brew 全称Homebrew  是Mac OSX上的软件包管理工具 Homebrew 安装和卸载工具 只用一行命令就能完成 官方地址:    http://brew.sh/index.html mac 自带ruby 打开命令行  terminal 输入  : ruby -version 1) 安装命令 ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)&

mac安装mysql及终端操作mysql与pycharm的数据库可视化

一.Mac安装mysql 首先下载mysql,地址:https://dev.mysql.com/downloads/mysql/ 然后已知安装就好了,会出现让你记住密码的提示,然后就安装好了.... 更改密码,可以参考:http://blog.csdn.net/soft2buy/article/details/50223373 二.终端操作mysql 首先在系统偏好里面找到mysql,如下图左一,然后点开,运行mysql,使其呈现running,如下图右一.     然后打开终端,输入mysql

Mac安装MySQL

Mac安装MySQL没有Win下那么智能(无脑), 还须要一些配置步骤. 网上教程不够具体, 找了几篇综合起来才安装好, 因此留个印记, 帮其它人降低点时间损耗: 1. 去官网下一个mysql-*.*.*-osx10.9-x86_64.dmg, 注意选择对应CPU位数的 2. 安装完后, 改密码 :/usr/local/mysql/bin/mysqladmin -u root password YourPassword 3. 从这一步開始有差别了: (1) 假设你是用Mac自带的terminal

ubuntu 安装 swoole 和mac 安装swoole 扩展

ubuntu php 安装swoole 比较容易 1. 从git下载源码 2. 下载pcre http://sourceforge.net/projects/pcre/files/pcre/8.36/ ./configure make &make install 3. 进入swoole 源码 phpize ./cofigure make &make install 编辑php.ini 添加extension = swoole.so 重启apache 生效 mac 安装swoole 我的ma

[IOS]VMware上虚拟机MAC安装XCode

1:VMware上虚拟机MAC安装前 VMware上安装Xcode之后 2:安装Xcode过程:把Xcode复制到虚拟机桌面上 3:复制完成之后,双击Xcode_6.4.dmg 文件 4:把Xcode.app 拖拽到Applications 5:安装完成后,点击Finder,找到应用程序Xcode.app 6:选中Xcode拖拽到Dock上 7:单机Xcode图标,然后Agree-->输入用户名 密码

Mac安装软件记录

1.Mac安装Brew > curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1 2.使用Brew安装SBT > sudo brew install sbt

mac安装python-ldap

升级了mac操作系统,安装python的python-ldap,报错 Modules/LDAPObject.c:18:10: fatal error: 'sasl.h' file not found #include <sasl.h> ^ 1 error generated. error: command 'cc' failed with exit status 1 ---------------------------------------- Cleaning up... Command

mac 安装 nginx 环境

1.brew search nginx 2.brew install nginx 启动nginx ,sudo nginx ;访问localhost:8080 发现已出现nginx的欢迎页面了. 备注: ln -s  /usr/local/sbin/nginx /usr/bin/nginx 做个软连接.[——根据具体目录而定]常用的指令有: nginx -V 查看版本,以及配置文件地址nginx -v 查看版本nginx -c filename 指定配置文件nginx -h 帮助 #重新加载配置|