记录在wireshark中使用lua-protobuf库的坎坷过程

本文记录了在Wireshark中使用lua-protobuf库所遇到的问题,包括编译lua.lib时的错误、加载时的win32提示、程序停止运行的故障以及multiple lua VMs detected的警告。解决方法涉及确保编译平台匹配、使用正确版本的Wireshark源码以及通过反向生成lib避免冲突。此外,还提到了protobuf模块的使用限制,需要使用proto2语法并包含optional关键字。
摘要由CSDN通过智能技术生成

0.前言

这两天要用wireshark来解析自定义的protobuf流数据,决定使用

lua-protobuf来解析。根据官网的提示,我需要编出一个pb.dll放到wireshark目录中,然后就可以在我自己的lua脚本中快乐地使用了。我装了vs,所以不需要考虑使用luarocks或者Python的方法,只需要考虑最后一种方式:
cl /O2 /LD /Fepb.dll /I Lua53\include /DLUA_BUILD_AS_DLL pb.c Lua53\lib\lua53.lib

于是乎,开始了因菜而坎坷的一路操作。


1.关于lua.lib

1.1 编译时

我首先看到这个命令之后立马开心的找来一个lua53的

工程代码.
哦这里插播一下编译pb.dll 过程遇到的失败。出现的这两种错误。

pb.obj : error LNK2019: 无法解析的外部符号 lua_gettop,该符号在函数 Lbuf_libcall 中被引用
pb.obj : error LNK2019: 无法解析的外部符号 lua_settop,该符号在函数 Lbuf_pack 中被引用
pb.obj : error LNK2019: 无法解析的外部符号 lua_pushvalue,该符号在函数 Lpb_encode 中被引用
用

Lua53.lib(lauxlib.obj) : error LNK2019: 无法解析的外部符号 __imp__feof,该符号在函数 _getF 中被引用
Lua53.lib(lauxlib.obj
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值