[zz]Lua 中使用protobuf

所需文件安装包:
 
python-2.7.2.msi
python安装程序                  http://www.python.org/getit/
 
LuaForWindows_v5.1.4-45.exe
lfw安装程序                     http://code.google.com/p/luaforwindows/downloads/list
 
protobuf-2.4.1.zip
PB源代码包                      http://code.google.com/p/protobuf/downloads/list
 
protoc-gen-lua.rar
lua protocol buffers 生成工具   http://code.google.com/p/protoc-gen-lua/
 
安装步骤:
 
1.假设你的.proto文件和要使用PB的lua程序代码文件都在d:in目录下(当然你愿意放哪儿随你便)
 
2.安装python (python-2.7.2.msi),安装完成后手动在系统的环境变量path中添加python27的安装路径
 
3.安装lua (LuaForWindows_v5.1.4-45.exe)最好安装在d:或c:的根目录 如d:lua
 
4.解压缩protobuf-2.4.1.zip到硬盘 如d:protobuf-2.4.1
 
5.进入d:protobuf-2.4.1目录中的python目录安装python包 python setup.py install
 
6.把protoc-gen-lua解压到d:或c:根目录 如: d:protoc-gen-lua 进入目录
 
7.在plugin目录里建一个protoc-gen-lua.bat(如果没有)写一句@python d:protoc-gen-luapluginprotoc-gen-lua 保存退出
 
8.进入d:protoc-gen-luaprotobuf目录,把里面的文件全都拷到d:in目录(9个lua文件,一个pd.dll)
 
9.在d:in里编写一个build.bat并写上:d:protobuf-2.4.1srcprotoc.exe --lua_out=./ --plugin=protoc-gen-lua="d:protoc-gen-luapluginprotoc-gen-lua.bat" xxxxxx.proto
 
10.在管理员的cmd命令行里运行build.bat,如果成功会生成一个xxxxxx_pb.lua文件
 
11.在lua程序代码中require "xxxxxx_pb"即可使用
 
注意:
repeated string 类型的字段会有问题,尽量使用bytes类型,这个问题新版已解决
在写proto文件时如果有repeated别的message结构时,请把引用的message结构定义在前面
 
另:另一proto实现为云风写的pbc: http://blog.codingnow.com/2011/12/protocol_buffers_for_c.html
原文地址:https://www.cnblogs.com/wishing/p/3447752.html