栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Google protobuf 导出到 lua 环境搭建

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Google protobuf 导出到 lua 环境搭建

        Protobuf 是由 Google 设计的一种高效、轻量级的信息描述格式。当前 lua 要用到 protobuf,如何安装 protobuf 导出环境呢?以下是环境搭步骤。

        首先要用到 python 环境,我的环境是 python 2.7。

一、下载 google protobuf 库

        地址:https://github.com/protocolbuffers/protobuf/releases

        

        注:选择版本的时候注意 Python 栏介绍,找个和自己 python 匹配的版本。

                最后标注的 zip 下载和自己电脑匹配位数的即可。

二、安装 protobuf

        1. 解压 protobuf-all-3.18.0-rc2.tar.gz 得到 protobuf-all-3.18.0-rc2。

        2. 解压 protoc-3.18.0-rc-2-win64.zip 得到里面的 bin/protoc.exe,将它拷贝到 protobuf-all-3.18.0-rc2/src 文件夹下。

        3. 切换目录到 protobuf-all-3.18.0-rc2/python,打开 cmd,执行其中的文件 setup.py

  

python setup.py install

        4. 安装完成后,cmd 执行 命令:pip list,可以看到 

 即说明 protobuf 安装成功。

三、下载大神写的 protoc-gen-lua

        地址:https://github.com/Tunied/protoc-gen-lua/tree/master/plugin

        得到其中的 plugin,以及 example。

四、导出目录设置

        1. 创建一个目录:protobuf

                将 【三】中得到的 example/person.proto 拷贝到该目录下。

                创建一个导出目录:export

                新建一个 txt,命名为 export_lua.bat。编辑内容:

for %%a in (*.proto) do (
	protoprotoc %%a --lua_out ./export --plugin=protoc-gen-lua="protoprotoc-gen-lua.bat"
)

pause

        2. 新建目录 proto:

                将 protoc-3.18.0-rc-2-win64.zip 得到 bin/protoc.exe 拷贝到该目录。

                将 【三】中得到的 plugin 中的 plugin_pb2.py,protoc-gen-lua 拷贝到该目录。

                新建 txt, 命名为 protoc-gen-lua.bat,编辑内容:

        

@python "%~dp0protoc-gen-lua"

                3. 设置好的结构如下

                

 

五、得到 protobuf lua 文件

        运行  export_lua.bat,在 export 中即可看到生成的 person_pb.lua 文件。

        后续将需要导出的 .proto 文件到 protobuf 目录下,运行 export_lua.bat 即可。

六、使用导出得到 lua 遇到的问题:

        proto 文件中有 import 其他 proto 文件,并且使用 引用文件中的对象。在执行程序解析对应消息时,会出现无法找到对象的错误。后面通过修改 protoc-gen-lua 文件,解决。

 七、protoc-gen-lua 的改动,protobuf-all-3.18.0-rc2.tar.gz,protoc-3.18.0-rc-2-win64.zip,导出目录已上传资源。https://download.csdn.net/download/u012419303/35609710

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/357281.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号