【发布时间】:2017-02-07 20:09:00
【问题描述】:
我有一个 wireshark 插件代码,可以在 Ubuntu 16 下完美地编译和生成 .so 文件。这个解析器是为 wireshark 1.6 编写的,该插件在 wireshark 1.6 下完美运行。
但是,当我尝试将此插件用于wireshark 2(或任何高于1.6 的wireshark 版本)时,会出现以下错误-
无法加载模块 /home/th89ct/.config/wireshark/plugins/plugin-1_0_0.so: /home/th89ct/.config/wireshark/plugins/plugin-1_0_0.so:未定义 符号:tvb_length
无法加载模块 /home/th89ct/.config/wireshark/plugins/plugin--1_0_0.so: /home/th89ct/.config/wireshark/plugins/plugin--1_0_0.so: 未定义 符号:check_col
所以我想通过替换方法来编辑代码 - 谷歌搜索后我发现这些方法不属于新的 wireshark API。
但问题是每次我编辑代码时 - 即使只在空白处放置一个空格 - 也会出现以下错误 -
*gcc -c -DHAVE_CONFIG_H -I/usr/include/wireshark -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -DINET6 -D_U_= 属性((未使用)) -Wall -Wpointer-arith -g -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -fPIC -DPIC packet-ife.c -o packet-ife.o packet-ife.c:105 :23:致命错误:epan/emem.h:没有这样的 文件或目录#include ^ 编译终止。 Makefile.linux:28:目标“packet-ife.o”的配方失败 make:*** [packet-ife.o] 错误 1*
我该怎么办?我不知道!!!!提前致谢
【问题讨论】:
标签: plugins makefile wireshark ubuntu-16.04 wireshark-dissector