Wireshark-dev: Re: [Wireshark-dev] What are nmake commands required to builddissector
From: "Hal Lander" <[email protected]>
Date: Tue, 14 Nov 2006 05:48:21 -0900
That was a big help.
To use a plugin dll is the only thing required that the dll file is in wireshark-gtk2\plugins\0.99.4 ?
The toplevel Makefile.nmake seems to explicitly copy each plugin, and I 
could edit the nmake file to include mine, but I want to be sure I am not 
missing something else.
The toplevel Makefile.nmake has a section near the bottom which does the 
copies, here is an extract;
	if not exist $(INSTALL_DIR)\plugins\$(VERSION) mkdir 
	xcopy ".\plugins\acn\acn.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
	xcopy ".\plugins\agentx\agentx.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
	xcopy ".\plugins\artnet\artnet.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
	xcopy ".\plugins\asn1\asn1.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
	xcopy ".\plugins\ciscosm\ciscosm.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
	xcopy ".\plugins\docsis\docsis.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
	xcopy ".\plugins\enttec\enttec.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d
xcopy ".\plugins\giop\coseventcomm.dll" $(INSTALL_DIR)\plugins\$(VERSION) /d

From: "Bill Florac" <[email protected]>
Reply-To: Developer support list for Wireshark <[email protected]>
To: "Developer support list for Wireshark" <[email protected]>
Subject: Re: [Wireshark-dev] What are nmake commands required to builddissector
Date: Mon, 13 Nov 2006 14:12:20 -0600

If you are building on 0.99.4 the DON'T cut and hack the make file.
Simply edit the Makefile.common file by adding your plug-in name at the
top and putting the source and includes where indicated:
# the name of the plugin

# the dissector sources (without any helpers)
DISSECTOR_SRC =           \

# corresponding headers

You then should modify the moduleinfo.h file replacing the define for
yours. You might also want to adjust the version (shows up in About):
#define PACKAGE "foo"
#define VERSION "0.0.1"

You can also modify the AUTHORS and ChangeLog files:
Authors :
Hal Lander <[email protected]>

Compile the file from the same directory as the plugin (foo)
Here is the batch file I call from my editor
@echo off
echo Make...
nmake -f Makefile.nmake
if not errorlevel 1 goto pass1
goto done
echo Make OK
echo Copy...
copy /y foo.dll ..\0.99.4\foo.dll > nul
if not errorlevel 1 goto pass2
goto done
echo Copy OK

-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Hal Lander
Sent: Monday, November 13, 2006 9:13 AM
To: [email protected]
Subject: [Wireshark-dev] What are nmake commands required to build

I have cut an pasted the Windows Makefile.nmake below from the developer
My dissector is the sample one from the guide, and I have stuck with the
name foo.
I think I have followed the edits in README.plugins correctly, but I am
not familiar with nmake and I get lost at section 4.

My questions are;
1. What command do I type at the command line to build the dissector
dll, and which directory should I be in when I type it ( I only want to
build the disssector as a plugin, I have built Wireshark from the source
and it works). ?
2. To get Wireshark to use the new dissector do I just need to put the
dll where the other dissector dlls are i.e. in
wireshark-gtk2\plugins\0.99.4 ?


include ..\..\config.nmake
############### no need to modify below this line #########
CFLAGS=/DHAVE_CONFIG_H /I../.. /I../../wiretap $(GLIB_CFLAGS) \
/I$(PCAP_DIR)\include -D_U_="" $(LOCAL_CFLAGS)
foo.dll foo.exp foo.lib : $(OBJECTS) $(LINK_PLUGIN_WITH)
link -dll /out:foo.dll $(LDFLAGS) $(OBJECTS) $(LINK_PLUGIN_WITH) \
rm -f $(OBJECTS) foo.dll foo.exp foo.lib *.pdb
distclean: clean
maintainer-clean: distclean

Find a local pizza place, music store, museum and morethen map the best
route!  http://local.live.com?FORM=MGA001

Wireshark-dev mailing list
[email protected]
Stay in touch with old friends and meet new ones with Windows Live Spaces http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us