$Id: README.win32,v 1.19 2001/03/05 22:53:36 gram Exp $ Running Ethereal, Tethereal, and Editcap on Win32 ================================================= You need the glib and gtk libraries for running Ethereal. These packages for win32 can be found at: http://www.ethereal.com/distribution/win32 and at the home page for the GTK+ for Win32 project: http://www.gimp.org/~tml/gimp/win32 or http://www.iki.fi/tml/gimp/win32/ (the mirror nearer to you may be faster). Plugins (gryphon.dll and mgcp.dll) can go in: C:\Program Files\Ethereal\plugins\ C:\Ethereal\plugins\ Where is the version number, without brackets. For example, C:\Ethereal\plugins\0.8.16 Yes, the location of plugins needs to be more flexible. Make sure the glib and gtk DLL's are in your path - i.e., that your path includes the directory (folder) or directories (folders) in which those DLLs are found - when you run Ethereal. This includes gtk-*.dll, glib-*.dll, gmodule-*.dll, gdk-*.dll, and gnu-intl.dll. As of the 20000805 GTK+/GLIB distribution, gthread-*.dll is no longer needed. The Win32 Binary distribution, available from http://www.ethereal.com/distribution/win32 used different version of the GTK+/GLIB libraries at different points in time: Ethereal Version GTK+/GLIB version ---------------- ----------------- 0.8.16 and after 20001226 0.8.11 - 0.8.15 20000805 0.8.9 - 0.8.10 20000416 0.8.8 and before 19990828 Capturing Packets ----------------- Remember, if using the the Win32 Binary distribution, available from http://www.ethereal.com/distribution/win32 there are two separate packages, one with non-capturing tools, and one with capturing tools. Install the appropriate package. The capturing version requires WinPcap, the non-capturing version does not. In order to capture with Win32, you need to install the NDIS packet capture driver for your particular Win32 OS; drivers for Windows 9x, Windows NT 4.0, and Windows 2000 can be downlaoded from the WinPcap home page: http://netgroup-serv.polito.it/winpcap/ If Ethereal is not capturing packets, you can test your WinPcap installatino by installing WinDump (TCPdump for Windows) ported by the same folks who make WinPcap. It's at: http://netgroup-serv.polito.it/windump/ They also make Analyzer, a GUI sniffer for Win32: http://netgroup-serv.polito.it/analyzer/ Compiling the Ethereal distribution from source =============================================== You'll need the development package for GLIB, GTK+, and WinPcap. Those versions are available from the respctive home pages for each project (the same URLs as listed above). The development packages contain header files and stub libaries to link against. SNMP and ZLIB are not working yet in Ethereal/Win32, but the libraries can be had from these locations if you want to hack: The UCD SNMP library for win32 can be had from ftp://ftp.revelstone.com/pub/snmp/ Zlib (or 'libz') is available for Win32 from http://www.winimage.com/zLibDll/ Instructions for MS Visual C ---------------------------- Modify the config.nmake file in the top directory of the Ethereal source tree to work for your local configuration. You should not have to modify any other Makefile. Be sure that your command-line environment is set up to compile and link with MSVC. When installing MSVC, you can have your system's environment set up to always allow compiling from the command line, or you can invoke the vcvars32.bat script. In the ethereal directory, type "nmake -f makefile.nmake". It will recurse into the subdirectories as appropriate. Some generated source is created by traditionally "Unix-ish" tools. If you are building from an official distribution, these files are already generated, so you have nothing to worry about unless you modify the source. If building from a CVS image, you'll need the tools to generate C source. The "special" files and their requisite tools are: Source Output Tool ------ ------ ---- dfilter-scanner.l *.c Flex wiretap/ascend-scanner.l *.c Flex ncp2222.py packet-ncp2222.c Python make-reg-dotc, packet*.c register.c Bash or make-reg-dotc.py, packet*.c register.c Python The Makefile.nmake supplied with the Ethereal distribution will attempt to make register.c with Python, since it is much much much faster than the shell version. The reason it is faster is because the shell version launches multiple processes (grep, sed) for each source file, multiple times. The Python script is one process. This matters a lot on Win32. If for some reason you want to build register.c with the shell script, uncomment out the action line for the register.c target in Makefile.nmake. If you have a Unix system handy, you can first build on Unix to create the source files that these tools make, then run the build on Windows. That will avoid the need for these tools on your Windows computer. If you don't have a Unix system handy, most of those tools are available for Win32 systems as part of the Cygwin package: http://sourceware.cygnus.com/cygwin/ After installing them, you will probably have to modify the config.nmake file to specify where the Cygwin binaries are installed. Python for Win32 is available from http://www.python.org/ Instructions for Cygwin ----------------------- No one has ever compiled Ethereal entirely with Cygwin. It should not be difficult, however. This spot is reserved for your instructions on how to compile Ethereal with Cygwin.