Wireshark-users: [Wireshark-users] Problem: Installing Ethereal for plug-in development
Title: Problem: Installing Ethereal for plug-in development
I am trying to load the latest Ethereal and redevelopment a plug-in I wrote 3 years ago.
I downloaded and installed ethereal-setup-0.99.0.exe to C:\Program Files\Ethereal
I downloaded and unzipped ethereal-1.1.0-SVN-18189.tar.gz to C:\Programs\ethereal
I downloaded Cygwin because it seems I might need the UNIX-like tools. It installed e.g. GNU bash, version 3.1.17(9)-release (i686-pc-cygwin).
I am using Microsoft Visual Studio 6.0 Enterprise Edition under Windows XP Professional 5.1.2600 SP2.
I only want to rebuild my old plug-in and not build the entire Ethereal product, but I know that I might need to perform some of the setup steps to get the development environment ready to build plug-ins. I started reading the README.win32 file. It referred me to http://wiki.ethereal.com/Development for detailed instructions on setting up my development environment; which referred me to http://www.ethereal.com/development.html; which said to access http://anonsvn.ethereal.com/ethereal-win32-libs/trunk/packages/ for some extra files needed to build under Windows. The packages (and README) link times out when trying to access it.
I returned to the README.win32 file. Under “Compiling the Ethereal distribution from source” and “Compilers” I executed “nmake -f makefile.nmake distclean” which resulted in:
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
rm -f gtk2.tmp/*.*
if exist gtk2.tmp rmdir gtk2.tmp
rm -f {lots of files…}
cd asn1
NMAKE : fatal error U1077: 'cd' : return code '0x1'
Stop.
Then I executed “nmake -f makefile.nmake setup” which resulted in:
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
: command not foundh: line 2:
: command not foundh: line 5:
'ools/win32-setup.sh: line 6: syntax error near unexpected token `{
'ools/win32-setup.sh: line 6: `err_exit () {
NMAKE : fatal error U1077: 'bash' : return code '0x2'
Stop.
I then went to my old plug-in source and read docs\README.plugins. Actually I’ve been bouncing around, trying different things, reinstalling, etc. so this was not literally the next thing I tried. I removed the .h files mentioned and the init method. I adjusted the makefiles, but since I really just wanted to recompile under MSVC I skipped ahead to that.
I added C:\Programs\ethereal, C:\Programs\ethereal\epan, C:\Programs\glib-2.12.3, C:\Programs\glib-2.12.3\glib, and C:\Programs\glib-2.12.3\gmodule to my Includes list, rebuilt and found that the config.h.win32 files has @HAVE_LIBPCAP@ and other such lines in it. Okay, there must be some magical autoconfig utility that massages my distribution files before I can use them. Too bad I can’t get into the packages trunk and get them. So I fake it and just define most everything as “#define {name} 1”. Heh, I’m not trying to build Ethereal, I just want my plug-in to compile and I bet all that isn’t really needed for my plugin. So, I make the changes and recompile.
It compiles but won’t link. I’ll have to add in the libethereal.lib. But there is no such file, only a libethereal.def. Okay, I’ll add that in as /DEF:{path}libethereal.def. I go from 25 unresolved symbols to 721. And the list includes the symbols defined in the .DEF file, so I’m confused.
I say, let me take the libethereal.dll and make a .lib out of it. But I find that the “nmake –f makefile.nmake distclean” command has erased it, apparently because it UNIX-related.
So, how can I just get my old plug-in to recompile so that I look at writing a new one?
I just sent all this to the ethereal-users mailing list only to find it said that list was discontinued and to post here. I’m sorry if this message gets duplicated.
Thank you,
Jay