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

6840阅读 0评论2015-04-21 sxcong
分类:iOS平台

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

由于项目需求,要使用ProtocolBuf,关于ProtocolBuf的介绍。protobuf介绍

从GitHub上找到老外写的强大的脚本,将Mac上安装ProtocolBuf的过程整合到一个脚本中。

该脚本完美解决mac上开发IOS软件protobuf的环境问题!

我也写过ppt,大家下载看看吧 

--------------------------------------------------------

说说强大的脚本,该脚本做了下面三件事情(用记事本打开查看)
1). 下载protobuffer 2.5.0
2). 生成不同平台的库,强制生成静态库。例如:
# x86_64 for Mac OS X 
# i386 for iPhone Simulator 
# armv7 for iPhone 
# armv7s for iPhone 
# arm64 for iPhone

生成的库大约118M,如果做iOS开发,只需要armv7/s 和i386 for iPhone Simulator三个即可,生成后约80M。你可以在脚本最后,合并库的时候,不要将X86的库和64位的库合并。

3).合并以上5个平台的库。

下面是运行脚本后,生成后的protobuf文件夹。把这个放到iOS工程中即可。


如何编译proto文件为cpp,java请看protobuf介绍


-----------------------------------------------------------------------------------------------

【误区】:

当项目需求protobuf的时候,我第一反应是从google官网下载protobuf 2.5包,到mac上去make、安装。

但是,这应该是mac开发使用的libprotobuf.dylib库,并非iOS使用的i386和armv7的.a库。所以,总是错误:

undefined references to `google::protobuf::GoogleOnceInitImp 

undefined references to `google::protobuf::internal::kEmptyString


终于从经理哪儿找到这个脚本,配置起来真爽啊!

上一篇:音视频聊天开发: 6 简单的stun server
下一篇:转:protocolBuf 在iOS上的使用入门、讲解、指南