您的位置:首页 > 其它

在wireshark里添加新的dissector遇到的问题及解决方法

2011-03-09 21:25 302 查看
在wireshark里添加新的dissector遇到了这样的问题,添加了packet-xx.c,在Makefile.common中也添加了Includes,但是编译却不能将添加的函数注册的register.c中去,即使remove掉了register.c也不起作用。

后来发现编译过程有下面的warning:

make[3]: Entering directory `/root/Perforce/wireshark-1.4.4/epan/dissectors'
cd ../.. && /bin/bash /root/Perforce/wireshark-1.4.4/missing --run automake-1.9 --gnu epan/dissectors/Makefile
/root/Perforce/wireshark-1.4.4/missing: line 52: automake-1.9: command not found
WARNING: `automake-1.9' is missing on your system. You should only need it if
you modified `Makefile.am', `acinclude.m4' or `configure.in'.
You might want to install the `Automake' and `Perl' packages.
Grab them from any GNU archive site.
cd ../.. && /bin/bash ./config.status epan/dissectors/Makefile depfiles
config.status: creating epan/dissectors/Makefile
config.status: executing depfiles commands
make[3]: Leaving directory `/root/Perforce/wireshark-1.4.4/epan/dissectors'
make[3]: Entering directory `/root/Perforce/wireshark-1.4.4/epan/dissectors'
Making register.c with python

也就是说automake没有被执行。这导致了Makefile.common更改后没有更新Makefile.in。打开Makefile.in果然没有发现新加的packet-xx.c文件。

于是重新安装automake,并在wireshark-1.4.4目录执行automake,问题解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: