最近在使用tolua# & LuaFramework框架做项目集成中用到了pbc
发现pbc的使用的文档不是太多,此处写一下个人的使用的总结,后面不断的完善
首先贴几个讲解pbc使用的博客:
1.http://blog.csdn.net/houjia159/article/details/45197955
2.http://blog.csdn.net/yeungxuguang/article/details/18452341
3.https://www.cnblogs.com/ghost240/archive/2013/08/12/3253092.html
在上述博文中有云风的blog的链接和git地址,此处不列出了
写一下在2博客中生成pb文件中遇到的一些问题:
1.生成protoc.exe,protoc-2.5.0-win32.zip 下载地址:https://github.com/google/protobuf/releases
2.批处理生成.pb文件:
下面是具体步骤,此处给出已经做好的工具包:http://download.csdn.net/download/u010314160/10159936
备注:路径不要用中文
1)生成pb.bat 批处理命令:
新建文本文件,粘贴下列代码
@echo off
set DIR=%~dp0
cd /d "%DIR%"
setlocal enabledelayedexpansion
for /r %%i in (*.proto) do (
set pbname=%%i
set pbname=!pbname:~0,-5!pb
protoc -I %DIR% --descriptor_set_out !pbname! %%i
)
if exist "./pb" rmdir /s /q "./pb"
mkdir "./pb"
move *.pb ./pb
echo "finished"
pause
修改文件名为pb.bat
2)将protoc.exe,pb.bat,XXX.proto 放入同一目录下并执行pb.bat,即可在pb文件夹下生成XXX.pb文件
在使用过程中发现的一些问题:
1.多层次嵌套解析可能会出问题,即a文件依赖b文件,b文件又依赖c文件。希望小伙伴们多去尝试下。暂时没有找到解决方案,据说是要修改c库。看到一篇博客,不知道有没有效果,这里也贴出来https://www.cnblogs.com/ColaZhang/p/5156105.html
2.后面的开发笔记中也提到了pbc这方面的,补一下连接:http://blog.csdn.net/u010314160/article/details/78975306
后记:注意版本问题,确保工具和协议是统一版本,比如:使用的proto3用proto2的工具去生成.pb文件